СправошнаяПоиск

Коды состояния (ответы) HTTP

Коды состояния ответа HTTP указывают, был ли успешно выполнен конкретный HTTP -запрос. Ответы сгруппированы в пять классов:

  1. Информационные ответы ( 100199)
  2. Успешные ответы ( 200- 299)
  3. Сообщения о перенаправлении ( 300- 399)
  4. Ответы клиента на ошибку ( 400499)
  5. Ответы сервера на ошибку ( 500599)

Приведенные ниже коды состояния определены в разделе 10 RFC 2616 . Вы можете найти обновленную спецификацию в RFC 7231 .

Примечание. Если вы получили ответ, которого нет в этом списке — это нестандартный ответ, возможно, настроенный для программного обеспечения конкретного сервера.

Информационные ответы

100 Continue

Этот промежуточный ответ указывает, что клиент должен продолжить запрос или проигнорировать ответ, если запрос уже завершен.

101 Switching Protocols

Этот код отправляется в ответ на Upgradeзаголовок запроса от клиента и указывает протокол, на который переключается сервер.

102 Processing( веб-DAV )

Этот код указывает на то, что сервер получил и обрабатывает запрос, но ответа пока нет.

103 Early Hints

Этот код состояния в первую очередь предназначен для использования с Linkзаголовком, позволяя пользовательскому агенту начать предварительную загрузку ресурсов, пока сервер готовит ответ.

Успешные ответы

200 OK

Запрос выполнен. Значение результата «успех» зависит от метода HTTP:

  • GET: Ресурс был получен и передан в теле сообщения.
  • HEAD: заголовки представления включаются в ответ без тела сообщения.
  • PUTили POST: ресурс, описывающий результат действия, передается в теле сообщения.
  • TRACE: Тело сообщения содержит сообщение запроса, полученное сервером.

201 Created

Запрос выполнен успешно, и в результате был создан новый ресурс. Обычно это ответ, отправляемый после POSTзапросов или некоторых PUTзапросов.

202 Accepted

Запрос получен, но еще не исполнен. Это ни к чему не обязывает, поскольку в HTTP нет способа отправить асинхронный ответ позже, указывающий результат запроса. Он предназначен для случаев, когда другой процесс или сервер обрабатывает запрос, или для пакетной обработки.

203 Non-Authoritative Information

Этот код ответа означает, что возвращенные метаданные не совсем совпадают с теми, что доступны на исходном сервере, а получены из локальной или сторонней копии. В основном это используется для зеркал или резервных копий другого ресурса. За исключением этого конкретного случая, 200 OKответ предпочтительнее этого статуса.

204 No Content

Для этого запроса нет контента для отправки, но заголовки могут быть полезны. Пользовательский агент может обновить свои кэшированные заголовки для этого ресурса новыми.

205 Reset Content

Сообщает пользовательскому агенту сбросить документ, отправивший этот запрос.

206 Partial Content

Этот код ответа используется, когда Rangeзаголовок отправляется от клиента для запроса только части ресурса.

207 Multi-Status (веб-DAV)

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

208 Already Reported (веб-DAV)

Используется внутри <dav:propstat>элемента ответа, чтобы избежать повторного перечисления внутренних членов нескольких привязок к одной и той же коллекции.

226 IM Used (Дельта-кодирование HTTP)

Сервер выполнил GETзапрос на ресурс, и ответ является представлением результата одной или нескольких манипуляций с экземпляром, примененных к текущему экземпляру.

Сообщения о перенаправлении

300 Multiple Choices

Запрос имеет более одного возможного ответа. Пользовательский агент или пользователь должны выбрать один из них. (Не существует стандартизированного способа выбора одного из ответов, но рекомендуются HTML-ссылки на возможные варианты, чтобы пользователь мог выбрать.)

301 Moved Permanently

URL запрошенного ресурса был изменен навсегда. Новый URL-адрес дается в ответе.

302 Found

Этот код ответа означает, что URI запрошенного ресурса был временно изменен . Дальнейшие изменения в URI могут быть внесены в будущем. Следовательно, этот же URI должен использоваться клиентом в будущих запросах.

303 See Other

Сервер отправил этот ответ, чтобы указать клиенту получить запрошенный ресурс по другому URI с помощью запроса GET.

304 Not Modified

Это используется для целей кэширования. Он сообщает клиенту, что ответ не был изменен, поэтому клиент может продолжать использовать ту же кэшированную версию ответа.

305 Use Proxy (Устаревший)

Определено в предыдущей версии спецификации HTTP, чтобы указать, что запрошенный ответ должен быть доступен через прокси. Он устарел из-за проблем безопасности, связанных с внутренней конфигурацией прокси-сервера.

306 unused

Этот код ответа больше не используется; он просто зарезервирован. Он использовался в предыдущей версии спецификации HTTP/1.1.

307 Temporary Redirect

Сервер отправляет этот ответ, чтобы указать клиенту получить запрошенный ресурс по другому URI тем же методом, который использовался в предыдущем запросе. Он имеет ту же семантику, что и 302 Foundкод ответа HTTP, за исключением того, что пользовательский агент не должен изменять используемый метод HTTP: если POSTв первом запросе использовалось a POST, во втором запросе должно использоваться a.

308 Permanent Redirect

Это означает, что ресурс теперь постоянно находится по другому URI, указанному в Location:заголовке HTTP-ответа. Он имеет ту же семантику, что и 301 Moved Permanentlyкод ответа HTTP, за исключением того, что пользовательский агент не должен изменять используемый метод HTTP: если POSTв первом запросе использовалось a POST, во втором запросе должно использоваться a.

Ответы клиента на ошибку

400 Bad Request

Сервер не может или не будет обрабатывать запрос из-за чего-то, что воспринимается как ошибка клиента (например, искаженный синтаксис запроса, неверный кадр сообщения запроса или вводящая в заблуждение маршрутизация запроса).

401 Unauthorized

Хотя стандарт HTTP определяет «неавторизованный», семантически этот ответ означает «не прошедший проверку подлинности». То есть клиент должен аутентифицировать себя, чтобы получить запрошенный ответ.

402 Payment Required (Экспериментальный)

Этот код ответа зарезервирован для использования в будущем. Первоначальной целью создания этого кода было использование его для цифровых платежных систем, однако этот код состояния используется очень редко, и не существует стандартного соглашения.

403 Forbidden

У клиента нет прав доступа к контенту; то есть он неавторизован, поэтому сервер отказывается предоставить запрошенный ресурс. В отличие от 401 Unauthorized, личность клиента известна серверу.

404 Not Found

Сервер не может найти запрошенный ресурс. В браузере это означает, что URL-адрес не распознан. В API это также может означать, что конечная точка действительна, но самого ресурса не существует. Серверы также могут отправлять этот ответ вместо того 403 Forbidden, чтобы скрывать существование ресурса от неавторизованного клиента. Этот код ответа, вероятно, наиболее известен из-за его частого появления в Интернете.

405 Method Not Allowed

Метод запроса известен серверу, но не поддерживается целевым ресурсом. Например, API может не разрешить вызов DELETEдля удаления ресурса.

406 Not Acceptable

Этот ответ отправляется, когда веб-сервер после согласования контента на основе сервера не находит контента, соответствующего критериям, заданным агентом пользователя.

407 Proxy Authentication Required

Это похоже на 401 Unauthorizedно аутентификация необходима для выполнения прокси.

408 Request Timeout

Этот ответ отправляется некоторыми серверами при бездействующем соединении, даже без какого-либо предварительного запроса со стороны клиента. Это означает, что сервер хотел бы отключить это неиспользуемое соединение. Этот ответ используется гораздо чаще, поскольку некоторые браузеры, такие как Chrome, Firefox 27+ или IE9, используют механизмы предварительного соединения HTTP для ускорения работы в Интернете. Также обратите внимание, что некоторые серверы просто отключают соединение, не отправляя это сообщение.

409 Conflict

Этот ответ отправляется, когда запрос конфликтует с текущим состоянием сервера.

410 Gone

Этот ответ отправляется, когда запрошенный контент был безвозвратно удален с сервера без адреса пересылки. Ожидается, что клиенты удалят свои кеши и ссылки на ресурс. Спецификация HTTP предполагает, что этот код состояния будет использоваться для «ограниченных по времени рекламных услуг». API не должны чувствовать себя обязанными указывать ресурсы, которые были удалены, с этим кодом состояния.

411 Length Required

Сервер отклонил запрос, потому что Content-Lengthполе заголовка не определено, а сервер требует его.

412 Precondition Failed

Клиент указал в своих заголовках предварительные условия, которым сервер не соответствует.

413 Payload Too Large

Объект запроса превышает ограничения, установленные сервером. Сервер может закрыть соединение или вернуть Retry-Afterполе заголовка.

414 URI Too Long

URI, запрошенный клиентом, длиннее, чем сервер готов интерпретировать.

415 Unsupported Media Type

Медиаформат запрошенных данных не поддерживается сервером, поэтому сервер отклоняет запрос.

416 Range Not Satisfiable

Диапазон, указанный Rangeполем заголовка в запросе, не может быть выполнен. Возможно, диапазон выходит за пределы размера данных целевого URI.

417 Expectation Failed

Этот код ответа означает, что ожидание, указанное в Expectполе заголовка запроса, не может быть выполнено сервером.

418 I'm a teapot

Сервер отказывается варить кофе в чайнике.

421 Misdirected Request

Запрос был направлен на сервер, который не может дать ответ. Это может быть отправлено сервером, который не настроен для создания ответов для комбинации схемы и полномочий, включенных в URI запроса.

422 Unprocessable Entity (веб-DAV)

Запрос был правильно сформирован, но не мог быть выполнен из-за семантических ошибок.

423 Locked (веб-DAV)

Ресурс, к которому осуществляется доступ, заблокирован.

424 Failed Dependency (веб-DAV)

Запрос не выполнен из-за сбоя предыдущего запроса.

425 Too Early Экспериментальный

Указывает, что сервер не хочет рисковать обработкой запроса, который может быть воспроизведен.

426 Upgrade Required

Сервер отказывается выполнять запрос с использованием текущего протокола, но может сделать это после того, как клиент перейдет на другой протокол. Сервер отправляет Upgradeзаголовок в ответе 426, чтобы указать требуемый(е) протокол(ы).

428 Precondition Required

Исходный сервер требует, чтобы запрос был условным. Этот ответ предназначен для предотвращения проблемы «потерянных обновлений», когда клиент получает GETсостояние ресурса, изменяет его и PUTотправляет обратно на сервер, когда тем временем третья сторона изменила состояние на сервере, что приводит к конфликту.

429 Too Many Requests

Пользователь отправил слишком много запросов за заданный промежуток времени ("ограничение скорости").

431 Request Header Fields Too Large

Сервер не хочет обрабатывать запрос, потому что его поля заголовка слишком велики. Запрос может быть отправлен повторно после уменьшения размера полей заголовка запроса.

451 Unavailable For Legal Reasons

Пользовательский агент запросил ресурс, который не может быть предоставлен по закону, например веб-страницу, подвергнутую цензуре со стороны правительства.

Ответы сервера на ошибку

500 Internal Server Error

Сервер столкнулся с ситуацией, которую он не знает, как с ней справиться.

501 Not Implemented

Метод запроса не поддерживается сервером и не может быть обработан. Единственными методами, которые должны поддерживать серверы (и, следовательно, которые не должны возвращать этот код), являются GETи HEAD.

502 Bad Gateway

Этот ответ об ошибке означает, что сервер, работая в качестве шлюза для получения ответа, необходимого для обработки запроса, получил недопустимый ответ.

503 Service Unavailable

Сервер не готов обработать запрос. Распространенными причинами являются сервер, который отключен для обслуживания или перегружен. Обратите внимание, что вместе с этим ответом должна быть отправлена ​​удобная страница с объяснением проблемы. Этот ответ следует использовать для временных условий, а Retry-Afterзаголовок HTTP должен, по возможности, содержать предполагаемое время до восстановления службы. Веб-мастер также должен позаботиться о заголовках, связанных с кэшированием, которые отправляются вместе с этим ответом, поскольку эти временные ответы обычно не следует кэшировать.

504 Gateway Timeout

Этот ответ об ошибке выдается, когда сервер действует как шлюз и не может вовремя получить ответ.

505 HTTP Version Not Supported

Версия HTTP, используемая в запросе, не поддерживается сервером.

506 Variant Also Negotiates

На сервере произошла внутренняя ошибка конфигурации: выбранный вариантный ресурс сам настроен на участие в прозрачном согласовании содержимого и, следовательно, не является надлежащей конечной точкой в ​​процессе согласования.

507 Insufficient Storage (веб-DAV)

Этот метод не может быть выполнен для ресурса, так как сервер не может сохранить представление, необходимое для успешного выполнения запроса.

508 Loop Detected (веб-DAV)

Сервер обнаружил бесконечный цикл при обработке запроса.

510 Not Extended

Для выполнения сервером требуются дальнейшие расширения запроса.

511 Network Authentication Required

Указывает, что клиент должен пройти аутентификацию, чтобы получить доступ к сети.