НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
⊗jsPmBsSc 41 of 61 menu

Проверка успеха по HTTP статусу ответа в AJAX в PHP

Давайте теперь добавим проверку успешности запроса в зависимости от HTTP статуса. Очевидно, что если полученный статус 200, то запрос был успешен:

try { let response = await fetch('/ajax.php'); if (response.status === 200) { console.log('success'); console.log(response.text()); } else { console.log('server error'); } } catch { console.log('network error'); }

Однако, в реальной жизни мы можем отдавать не только статус 200, но и другие статусы из этого диапзона. К примеру, у нас могут отдаваться как 200, так и 201 статусы:

try { let response = await fetch('/ajax.php'); if (response.status === 200 || response.status === 201) { console.log('success'); let text = await response.text(); console.log(text); } else { console.log('server error'); } } catch { console.log('network error'); }

На самом деле запрос будет успешным, если статус ответа сервера находится в диапазоне 200–299. Для удобства проверки в объекте response содержится свойство ok, которое показывает, был ли запрос успешным.

Оно содержит значение true, если статус ответа попадает в диапазон 200–299, и false, если в другие диапазоны.

Давайте воспользуемся этим свойством для проверки успешности запроса:

try { let response = await fetch('/ajax.php'); if (response.ok) { console.log('success'); let text = await response.text(); console.log(text); } else { console.log('server error'); } } catch { console.log('network error'); }

Отдайте статус в диапазоне 200–299. Проверьте успешность запроса.

Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить