Классы статус-кодов HTTP
1️⃣ Как кратко ответить
HTTP статус-коды делятся на пять классов: 1xx (информационные), 2xx (успешные), 3xx (перенаправления), 4xx (ошибки клиента), 5xx (ошибки сервера). Каждый класс указывает на тип ответа сервера на запрос клиента.
2️⃣ Подробное объяснение темы
HTTP статус-коды — это трехзначные числа, которые сервер возвращает в ответ на HTTP-запрос клиента. Они помогают клиенту понять, как сервер обработал запрос. Эти коды делятся на пять классов, каждый из которых обозначает определенный тип ответа.
1xx: Информационные
Коды этого класса указывают, что запрос был получен и процесс продолжается. Они редко используются в практике, но могут быть полезны для указания промежуточного состояния.
- 100 Continue: Клиент может продолжать отправку запроса.
- 101 Switching Protocols: Сервер согласен на изменение протокола, как запрашивалось клиентом.
2xx: Успешные
Эти коды означают, что запрос клиента был успешно принят, понят и обработан.
- 200 OK: Запрос успешно выполнен. Это самый распространенный код.
- 201 Created: Запрос привел к созданию нового ресурса.
- 204 No Content: Запрос успешно выполнен, но в ответе нет содержимого.
3xx: Перенаправления
Коды этого класса указывают, что клиент должен предпринять дополнительные действия для завершения запроса.
- 301 Moved Permanently: Запрашиваемый ресурс был перемещен на новый постоянный URL.
- 302 Found: Ресурс временно находится по другому URL.
- 304 Not Modified: Ресурс не изменялся с момента последнего запроса.
4xx: Ошибки клиента
Эти коды указывают на ошибки, вызванные клиентом. Они означают, что запрос содержит неверный синтаксис или не может быть выполнен.
- 400 Bad Request: Сервер не может обработать запрос из-за ошибки клиента.
- 401 Unauthorized: Для доступа к ресурсу требуется аутентификация.
- 404 Not Found: Запрашиваемый ресурс не найден на сервере.
5xx: Ошибки сервера
Коды этого класса указывают на ошибки сервера. Они означают, что сервер не смог выполнить запрос.
- 500 Internal Server Error: Общая ошибка сервера, когда он не может обработать запрос.
- 502 Bad Gateway: Сервер, действующий как шлюз или прокси, получил недопустимый ответ от вышестоящего сервера.
- 503 Service Unavailable: Сервер временно не может обработать запрос из-за перегрузки или обслуживания.
Пример использования
Когда вы отправляете запрос на сервер, например, через браузер, сервер возвращает один из этих кодов, чтобы сообщить о результате обработки запроса. Например, если вы запрашиваете страницу, которая существует, сервер вернет код 200. Если страница не существует, вы получите код 404.
fetch('https://example.com/api/data')
.then(response => {
if (response.status === 200) {
// Запрос успешен, обрабатываем данные
return response.json();
} else if (response.status === 404) {
// Ресурс не найден
console.error('Resource not found');
} else {
// Обработка других кодов
console.error('Unexpected response code:', response.status);
}
})
.catch(error => {
// Обработка ошибок сети
console.error('Network error:', error);
});
fetch('https://example.com/api/data'): Отправляет HTTP-запрос на указанный URL..then(response => { ... }): Обрабатывает ответ от сервера.if (response.status === 200): Проверяет, успешен ли запрос.return response.json(): Если успешен, преобразует ответ в JSON.else if (response.status === 404): Проверяет, не найден ли ресурс.console.error('Resource not found'): Логирует ошибку, если ресурс не найден..catch(error => { ... }): Обрабатывает ошибки сети, если они возникли.
🔒 Подпишись на бусти автора и стань Алигатором, чтобы получить полный доступ к функционалу сайта и отслеживать свой прогресс!
Подписаться