XMLHttpRequest.readyState
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
La propriété XMLHttpRequest.readyState renvoie l'état dans lequel se trouve un client XMLHttpRequest.Un client XHR existe dans l'un des états suivants :
Value | State | Description |
0 |
UNSENT |
Le client a été créé. open() n'a pas encore été appelé. |
1 |
OPENED |
open() a été appelé. |
2 |
HEADERS_RECEIVED |
send() a été appelé, et les en-têtes et le statut sont
disponibles.
|
3 |
LOADING |
Téléchargement; responseText contient des données
partielles.
|
4 |
DONE |
L'opération est terminée. |
- UNSENT
-
Le client XMLHttpRequest a été créé, mais la méthode open() n'a pas encore été appelée.
- OPENED
-
La méthode open() a été invoquée. Pendant cet état, les en-têtes de requête peuvent être définis à l'aide de la méthode setRequestHeader() et la méthode send() peut être appelée, ce qui lancera la récupération.
- HEADERS_RECEIVED
-
send() a été appelé et les en-têtes de réponse ont été reçus
- LOADING
-
Le corps de la réponse est en cours de réception. Si
responseType
is "text" ou une chaîne vide,responseText
aura la réponse textuelle partielle au fur et à mesure de son chargement. - DONE
-
L'opération de récupération est terminée. Cela peut signifier que le transfert de données a été effectué avec succès ou a échoué.
Note :
Les noms des états sont différents dans les versions d'Internet Explorer antérieures à 11. Au lieu de UNSENT
, OPENED
, HEADERS_RECEIVED
, LOADING
et DONE
, les noms READYSTATE_UNINITIALIZED
(0), READYSTATE_LOADING
(1), READYSTATE_LOADED
(2), READYSTATE_INTERACTIVE
(3) et READYSTATE_COMPLETE
(4) sont utilisés.
Exemple
var xhr = new XMLHttpRequest();
console.log("UNSENT", xhr.readyState); // readyState will be 0
xhr.open("GET", "/api", true);
console.log("OPENED", xhr.readyState); // readyState will be 1
xhr.onprogress = function () {
console.log("LOADING", xhr.readyState); // readyState will be 3
};
xhr.onload = function () {
console.log("DONE", xhr.readyState); // readyState will be 4
};
xhr.send(null);
Spécifications
Specification |
---|
XMLHttpRequest Standard # states |
Compatibilité des navigateurs
BCD tables only load in the browser