Première étape: créer une instance
C'est juste une instance de classe classique mais deux options à essayer pour compatibilité avec les navigateurs.
1
2
3
4
5
6
7
8
| if (window.XMLHttpRequest) // Objet standard { xhr = new XMLHttpRequest(); // Firefox, Safari, ... } else if (window.ActiveXObject) // Internet Explorer { xhr = new ActiveXObject( "Microsoft.XMLHTTP" ); } |
ou plus simplement, on peut utiliser les exceptions:
1
2
3
4
5
6
7
8
| try { xhr = new ActiveXObject( "Microsoft.XMLHTTP" ); // Essayer IE } catch (e) // Echec, utiliser l'objet standard { xhr = new XMLHttpRequest(); } |
Seconde étape: attendre la réponse
Le traitement de la réponse et les traitements qui suivent sont inclus dans une fonction, et la valeur de retour de cette fonction sera assignée à l'attribut onreadystatechange de l'objet précédemment créé.
1
2
3
4
| xhr.onreadystatechange = function () { // instructions de traitement de la réponse }; |
1
2
3
4
5
6
7
8
| if (xhr.readyState == 4) { // Reçu, OK } else { // Attendre... } |
Troisième étape: faire la requête elle-même
Deux méthodes de XMLHttpRequest sont utilisées:
- open: commande GET ou POST, URL du document, true pour asynchrone.
- send: avec POST seulement, données à envoyer au serveur.
La requête ci-dessous lit un document sur le serveur.
- open: commande GET ou POST, URL du document, true pour asynchrone.
- send: avec POST seulement, données à envoyer au serveur.
La requête ci-dessous lit un document sur le serveur.
1
2
| xhr.send( null ); |
0 commentaires:
Enregistrer un commentaire