XMLHttpRequest : propriété readyState
Baseline
Large disponibilité
Cette fonctionnalité est bien établie et fonctionne sur de nombreux appareils et versions de navigateurs. Elle est disponible sur tous les navigateurs depuis juillet 2015.
Note : Cette fonctionnalité est disponible via les Web Workers, sauf pour les Service Workers.
La propriété en lecture seule readyState de l'interface XMLHttpRequest retourne l'état dans lequel se trouve un client XMLHttpRequest. Un client XHR existe dans l'un des états suivants :
| Valeur | État | Description |
|---|---|---|
0 |
UNSENT |
Le client est créé. open() n'a pas encore été appelé. |
1 |
OPENED |
open() est appelé. |
2 |
HEADERS_RECEIVED |
send() est appelé, et les en-têtes ainsi que le statut sont disponibles. |
3 |
LOADING |
Téléchargement en cours ; responseText contient des données partielles. |
4 |
DONE |
L'opération est terminée. |
UNSENT-
Le client XMLHttpRequest est créé, mais la méthode
open()n'a pas encore été appelée. OPENED-
La méthode
open()est appelée. Pendant cet état, les en-têtes de la requête peuvent être définis à l'aide de la méthodesetRequestHeader()et la méthodesend()peut être appelée, ce qui initie la récupération. HEADERS_RECEIVED-
send()est appelé, toutes les redirections (le cas échéant) ont été suivies 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
responseTypeest « text » ou une chaîne de caractères vide,responseTextcontient la réponse textuelle partielle au fur et à mesure de sa réception. 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 qu'il a échoué.
Exemples
const xhr = new XMLHttpRequest();
console.log("UNSENT", xhr.readyState); // readyState vaut 0
xhr.open("GET", "/api", true);
console.log("OPENED", xhr.readyState); // readyState vaut 1
xhr.onprogress = () => {
console.log("LOADING", xhr.readyState); // readyState vaut 3
};
xhr.onload = () => {
console.log("DONE", xhr.readyState); // readyState vaut 4
};
xhr.send(null);
Spécifications
| Spécification |
|---|
| XMLHttpRequest> # states> |