XMLHttpRequestXMLHttpRequest dans Mozilla 0.6 (décembre 2000)
let xhr = new XMLHttpRequest();
xhr.open("GET", "adresse_ressource");
xhr.addEventListener("load", function () {
alert(xhr.response);
});
xhr.send();
send !
xhr.responseText sous forme de texte brutxhr.responseXML sous forme d'objet DOMresponseType,
par exemple à text pour récupérer du texte (défaut) ou
document pour récupérer un document HTML ou XMLresponseresponseXML et responseText
{
"name": "John Smith",
"address": {
"city": "New York, NY",
"streetAddress": "21 2nd Street"
},
"phoneNumbers": [
"212 732-1234",
"646 123-4567"
]
}
xhr.responseText,
et on le convertissait en objet JS en exécutant le code (pas propre), ou avec la fonction JSON.parse()JSON.parse() est JSON.stringify(), qui
renvoie une sérialisation en JSON d'un objet JavaScriptresponseType du XHRxhr.response (comme pour les autres modes de réponse)
let xhr = new XMLHttpRequest();
xhr.open('GET', 'adresse_ressource');
xhr.responseType = "json";
xhr.addEventListener("load", function () {
console.log(xhr.response);
});
xhr.send();
load : se déclenche lorsque la requête s'est correctement terminéeerror : se déclenche lorsque la requête ne s'est pas terminéeabort : se déclenche lorsque la requête a été abandonnée (par exemple avec xhr.abort()timeout : se déclenche lorsque la requête a dépassé la durée maximale autorisée
xhr.open('POST', 'page.php');
xhr.addEventListener('load', monCallback);
xhr.setRequestHeader('Content-type',
'application/x-www-form-urlencoded');
xhr.send('tutu=0&toto=1');
fetch