JavaScript XMLHttpRequest.status — код відповіді HTTP
Властивість status повертає код відповіді HTTP: 200 — успіх, 404 — не знайдено, 500 — помилка сервера.
Загальний опис
Найважливіше — нуль. Він означає, що відповіді не було взагалі: збій мережі, запит перервано, заблоковано політикою CORS. Це не HTTP-код, а ознака, що до сервера навіть не дійшло.
Тому перевірка успіху — це не status === 200, а діапазон status >= 200 && status < 300: коди 201 (створено) і 204 (без вмісту) теж означають успіх.
- Нотатка
-
автор: NagarDstatus === 0— не помилка сервера, а відсутність відповіді. Найчастіше це CORS або обрив мережі, і шукати причину треба саме там.
Переглядачі
| Переглядач | ||||||
|---|---|---|---|---|---|---|
| status | 1+ | 1+ | 1.2+ | 8+ | 12+ | 7+ |
| Переглядач | ||||
|---|---|---|---|---|
| status | yes | yes | yes | yes |
Приклади
+ запропонувати свій приклад у пісочниці
Правильна перевірка успіху й що означає нуль.
const xhr = new XMLHttpRequest();
xhr.onload = () => {
// не === 200, а діапазон: 201 і 204 теж успіх
if (xhr.status >= 200 && xhr.status < 300) {
console.log('Успіх:', xhr.responseText);
} else {
console.error('Помилка сервера:', xhr.status, xhr.statusText);
}
};
xhr.onerror = () => {
// сюди status === 0 — відповіді не було взагалі
console.error('Мережа недоступна або CORS');
};
xhr.open('GET', '/api/data');
xhr.send();
Коментарі
Коментарів ще немає — будьте першим!