Код статуса представляет собой ответ сервера, который состоит из трёх цифр. Первая определяет класс ответа, а две другие указывают конкретный ответ.
Существует пять основных категорий кодов статусов. Все они приведены ниже:
| № | Код и описание |
|---|---|
| 1 | 1xx: Информационное
Означает, что запрос был успешно получен и идёт его обработка. |
| 2 | 2xx: Успешное выполнение Запрос был успешно получен, понят и принят. |
| 3 | 3xx: Перенаправление Последующие действия должны быть предприняты для выполнения запроса. |
| 4 | 4xx: Ошибка на стороне клиент
Запрос содержит синтаксическую ошибку, либо не корректен. |
| 5 | 5xx: Ошибка на стороне сервера Сервер не может выполнить обработать корректный запрос. |
Коды статусов расширяемы и HTTP приложение не должно понимать значение всех кодов.
Ниже приведены наиболее распространённые код статусов по категориям.
1ХХ: Информационные
| Сообщение | Описание |
|---|---|
| 100 Continue | Только часть запроса была получена сервером, но на данный момент запрос не был отклонён. Клиент должен продолжать запрос. |
| 101 Switching Protocols | Сервер выбирает протокол. |
2ХХ: Успешное выполнение
| Сообщение | Описание |
|---|---|
| 200 OK | Запрос успешен |
| 201 Created | Запрос выполнен, новый ресурс создан. |
| 202 Accepted | Запрос принят, но обработка не завершена. |
| 203 Non-authoritative Information | Информация в заголовке получена из локальной или сторонней копии, а не от оригинального сервера. |
| 204 No Content | Код статуса и заголовок переданы в ответе, но данные отсутствуют. |
| 205 Reset Content | Браузер должен очистить форму для этой транзакции для дополнительного ввода. |
| 206 Partial Content | Сервер возвращает часть данных. Используется для ответа на запрос, содержащий заголовок Content-Range. |
3ХХ: Перенаправление
| Сообщение | Описание |
|---|---|
| 300 Multiple Choices | Список ссылок. Пользователь может выбрать ссылку и перейти к локации. Максимальное количество ссылок – 5. |
| 301 Moved Permanently | Запрашиваемая страница была перенесена на новую URL. |
| 302 Found | Запрашиваемая страница была временно перенесена на новую URL. |
| 303 See Other | Запрашиваемая страница может быть найдена по другой URL. |
| 304 Not Modified | Код ответа для заголовка If-Modifier-Since или If-None-Match, где URL не была изменена с крайней даты обновления. |
| 305 Use Proxy | Доступ к запрашиваемой странице должен быть запрошен через прокси, который указан в заголовке Location. |
| 306 Unused | Данный код использовался в предыдущей версии, но на данный момент он не используется, а сам код был зарезервирован. |
| 307 Temporary Redirect | Запрашиваемая страница была временно перенесена на новую URL. |
4ХХ: Ошибка на стороне клиента
| Сообщение | Описание |
|---|---|
| 400 Bad Request | Сервер не понял запрос. |
| 401 Unauthorized | Запрашиваемая страница требует имя пользователя и пароль. |
| 402 Payment Required | На данный момент клиент не может использовать данный код. |
| 403 Forbidden | Доступ к запрашиваемой странице запрещён. |
| 404 Not Found | Сервер не может найти запрашиваемую страницу. |
| 405 Method Not Allowed | Метод, указанный в запросе, является недопустимым. |
| 406 Not Acceptable | Сервер генерирует ответ, который не может быть принят клиентом. |
| 407 Proxy Authentication Required | Клиент должен авторизоваться с помощью прокси-сервера прежде чем запрос сможет быть обработан. |
| 408 Request Timeout | Запрос длился дольше, чем сервер был готов ждать. |
| 409 Conflict | Запрос не может быть завершён из-за конфликта. |
| 410 Gone | Запрашиваемая страница больше недоступна. |
| 411 Length Required | Элемент “Content-Length” не определён. Сервер не может принять запрос без данного элемента. |
| 412 Precondition Failed | Сервер признал предусловия запроса ошибочными. |
| 413 Request Entity Too Large | Сервер не примет данный запрос, так как тело запроса слишком большое. |
| 414 Request-url Too Long | Сервер не примет данный запроса, так как URL слишком большая (длинная). |
| 415 Unsupported Media Type | Север не примет данный запрос, так как данный тип медиа файла не поддерживается. |
| 416 Requested Range Not Satisfiable | Запрашиваемый диапазон байтов недоступен и находится за пределами диапазона. |
| 417 Expectation Failed | Ожидания, переданные в заголовке запроса не могут быть удовлетворены данным сервером. |
5ХХ: Ошибка на стороне сервера
| Сообщение | Описание |
|---|---|
| 500 Internal Server Error | Запрос не выполнен. Сервер попал в непредвиденные условия. |
| 501 Not Implemented | Запрос не выполнен. Сервер не поддерживает запрашиваемый функционал. |
| 502 Bad Gateway | Запрос не выполнен. Сервер получил недоступный запрос от следующего сервера. |
| 503 Service Unavailable | Запрос не выполнен. На данный момент сервер перегружается, или не работает. |
| 504 Gateway Timeout | Соединение закрыто по времени. |
| 505 HTTP Version Not Supported | Сервер не поддерживает данную версию протокола HTTP. |
На этом мы заканчиваем изучение код статуса протокола HTTP.
В следующей статье мы рассмотрим поля заголовка (header fields).
![]()