XMLHttpRequest: свойство readyState
Базовая Широко доступна
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Примечание: Эта функция доступна в Web Workers, за исключением Service Workers.
Свойство XMLHttpRequest.readyState возвращает состояние клиента XMLHttpRequest. Клиент XHR существует в одном из следующих состояний:
| Значение | Состояние | Описание |
|---|---|---|
0 | UNSENT | Клиент создан. open() ещё не вызывался. |
1 | OPENED |
open() был вызван. |
2 | HEADERS_RECEIVED |
send() был вызван, и заголовки и статус доступны. |
3 | LOADING | Загрузка; responseText содержит частичные данные. |
4 | DONE | Операция завершена. |
- UNSENT
-
Клиент XMLHttpRequest создан, но метод open() ещё не был вызван.
- OPENED
-
Метод open() был вызван. В этом состоянии заголовки запроса можно установить с помощью метода setRequestHeader(), а метод send() можно вызвать для инициирования запроса.
- HEADERS_RECEIVED
-
Метод send() был вызван, все редиректы (если таковые имеются) были выполнены, и заголовки ответа получены.
- LOADING
-
Тело ответа загружается. Если
responseTypeравно "text" или пустой строке,responseTextбудет содержать частичный текстовый ответ по мере загрузки. - DONE
-
Операция запроса завершена. Это может означать, что передача данных успешно завершена или завершилась ошибкой.
Пример
const 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 = () => {
console.log("LOADING", xhr.readyState); // readyState will be 3
};
xhr.onload = () => {
console.log("DONE", xhr.readyState); // readyState will be 4
};
xhr.send(null);
Спецификации
| Спецификация |
|---|
| XMLHttpRequest # состояния |
Совместимость с браузерами
| Рабочий стол | Мобильные устройства | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
readyState |
1 | 12 | 1 | 8 | 1.2 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 |
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest/readyState