Вопрос проверяет знание классификации HTTP-кодов ответов, что необходимо для понимания работы веб-протоколов и отладки сетевых запросов.
HTTP-коды ответов — это трёхзначные числа, которые сервер отправляет клиенту в ответ на запрос. Они делятся на пять групп, каждая из которых имеет своё назначение. Понимание этих кодов помогает разработчикам быстро диагностировать проблемы в работе веб-приложений.
Коды этой группы сообщают, что запрос получен и обрабатывается. Они редко используются в повседневной практике, но важны для протоколов вроде WebSocket. Пример: 100 Continue — клиент может продолжать отправку тела запроса.
Эти коды указывают, что запрос был успешно обработан. Самый известный — 200 OK, который возвращается при успешном GET-запросе. 201 Created используется после создания ресурса (например, при POST). 204 No Content означает успех, но без тела ответа.
Коды этой группы говорят, что для выполнения запроса нужно выполнить дополнительные действия. 301 Moved Permanently — ресурс перемещён навсегда, 302 Found — временное перенаправление. 304 Not Modified используется для кэширования.
Эти коды указывают на проблемы со стороны клиента. 400 Bad Request — неверный синтаксис запроса. 401 Unauthorized — требуется аутентификация. 403 Forbidden — доступ запрещён. 404 Not Found — ресурс не найден. 429 Too Many Requests — превышен лимит запросов.
Коды этой группы сигнализируют о проблемах на стороне сервера. 500 Internal Server Error — общая ошибка сервера. 502 Bad Gateway — неверный ответ от вышестоящего сервера. 503 Service Unavailable — сервер временно недоступен.
fetch('/api/data')
.then(response => {
if (response.status === 200) {
return response.json();
} else if (response.status === 404) {
console.error('Resource not found');
} else if (response.status === 500) {
console.error('Server error');
}
});В этом примере мы обрабатываем разные коды ответов, чтобы корректно реагировать на успех или ошибку.
Знание групп HTTP-кодов необходимо для отладки сетевых запросов, настройки серверов и создания надёжных клиент-серверных приложений. Это базовый навык для любого веб-разработчика.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию