IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] Récupérer code source XMLHttpRequest


Sujet :

AJAX

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Par défaut [AJAX] Récupérer code source XMLHttpRequest
    Salut a tous!

    Je voudrait récupéré le code source code source html avec XMLHttpRequest.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    function $(id) 
    {
        return document.getElementById(id);
    }
     
    function requete(url, div) 
    {
     var requete; // on déclare l'instance
     var requete = new XMLHttpRequest();
     requete.open('GET', url, false);
     requete.send(null);
     
     var contenu = requete.responseText;
     $(div).innerHTML = contenu;
    }
    Ce code marche mais mon probleme est que cette technique ne prend pas en compte les cookies et je veut récupérer le code d'une page après identification.
    J'ai donc essaye ceci mais sans succès :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    function requete(url, div) 
    {
        var data = "username=user&password=pass"
        var requete = new XMLHttpRequest();
        requete.open('POST', url, false);
        setRequestHeader("Content-Type","application/x-www-form-urlencoded")
        requete.send(data);
        var contenu = requete.responseText;
        $(div).innerHTML = contenu;
    }
    Merci de votre aide !

  2. #2
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Salut.
    Ta méthode envoie des paramètres username et password, mais ça ne sert à rien pour l'authentification
    L'authentification se fait au niveau de l'url :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url = 'http://'+user+':'+pass+'@www.domaine.com';
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  3. #3
    Membre habitué

    Inscrit en
    Novembre 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 9
    Par défaut
    Tu peux essayer de spécifier le nom d'utilisateur et le pass dans le open:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function requete(url, div) 
    {
        var requete = new XMLHttpRequest();
        requete.open('GET', url, false,'monusername','monpass');
        requete.send();
        var contenu = requete.responseText;
        $(div).innerHTML = contenu;
    }

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Par défaut
    Merci a vous deux de ses réponse mais ça ne marche pas...

    Bovino, avec ta méthode on aurait cela par exemple?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url = 'http://MonLogin:MonPass@www.google.fr';
    Le formulaire d'identification du site est celui-ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    <form method="post" action="/login/check/">
        <ul>
        <li class="formrow">
    	    <label for="player" class="player">Joueur:</label>
    	    <input id="player" maxlength="30" size="15" type="text" name="username" />
        </li>
     
        <li class="formrow">
    	    <label for="password" class="password" style="width:65px">Mot de passe:</label>
    	    <input id="password" maxlength="32" size="15" type="password" name="password" id="password" />	
        </li>
        <li class="login">
    	    <input class="formbutton" type="submit" name="submitForm" value="Connexion"</li>
        <li>
    	    <a class="forgotten" href="/pw_forgotten/">Mot de passe oublié</a>
     
        </li>
        </ul>
     
        </form>

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut
    Arf...
    J'avais compris une authentification pour l'accès à la page...

    Du coup, ton premier code devrait fonctionner, si toutefois tu prends en compte le passage d'une méthode GET à une méthode POST qui peut expliquer que tu ne récupères pas tes paramètres !
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  6. #6
    Membre habitué

    Inscrit en
    Novembre 2009
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 9
    Par défaut
    Idem, ma méthode ne fonctionne que pour une authentification html...

    Peux tu détailler les erreurs que tu obtiens avec ton code du post #1?
    (affichage de requete.status, requete.ResponseText, etc...)

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par défaut


    Même si ces réponses ne correspondaient pas au problème posé, ça a au moins permis d'enrichir la FAQ

    Citation Envoyé par Bovino Voir le message
    Salut.
    Ta méthode envoie des paramètres username et password, mais ça ne sert à rien pour l'authentification
    L'authentification se fait au niveau de l'url :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    url = 'http://'+user+':'+pass+'@www.domaine.com';
    Citation Envoyé par nbarraille Voir le message
    Tu peux essayer de spécifier le nom d'utilisateur et le pass dans le open:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    function requete(url, div) 
    {
        var requete = new XMLHttpRequest();
        requete.open('GET', url, false,'monusername','monpass');
        requete.send();
        var contenu = requete.responseText;
        $(div).innerHTML = contenu;
    }
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2009
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2009
    Messages : 18
    Par défaut
    Arf la faq ne répond pas a mes besoins !

    Sinon la méthode ne prend pas les cookies car même avec un autre onglet ouvert en étant connecter au site il me renvoi le code de la page d'identification..

Discussions similaires

  1. Aide pour récupérer code source dans une variable
    Par leumas dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 02/09/2008, 14h03
  2. Récupérer code source à distance
    Par Metalyn dans le forum Langage
    Réponses: 2
    Dernier message: 04/06/2008, 15h09
  3. Récupérer code source TWebBrowser
    Par [DreaMs] dans le forum Web & réseau
    Réponses: 2
    Dernier message: 12/12/2007, 18h14
  4. récupérer code source page HTML
    Par gianni17 dans le forum AWT/Swing
    Réponses: 3
    Dernier message: 02/07/2007, 15h47
  5. [cURL] Récupérer code source d'une page
    Par sourivore dans le forum Bibliothèques et frameworks
    Réponses: 11
    Dernier message: 17/06/2007, 13h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo