Электронный магазин на Java и XML

       

Коды состояний и ошибок HTTP


В интерфейс HttpServl etResponse входят константы для обозначения всех кодов состояний и ошибок HTTP. Они перечислены в табл. А. 18. По существу это та же информация, которая содержится в спецификации RFC 2616, где описан стандарт HTTP 1.1. Вообще коды можно разделить на следующие категории:

серия 100-199 — информационные коды, процесс продолжается;

серия 200-299 — коды указывают, что процесс был успешным;

серия 300-399 — переадресация, для выполнения запроса требуются дальнейшие действия;

серия 400-499 — ошибка клиента, в запросе содержатся синтаксические ошибки или запрос не может быть выполнен;

серия 500-599 — ошибка сервера, сервер отказывается выполнять заведомо корректный запрос.

Сами коды ошибок перечислены в табл. А. 19.

Таблица А.18. Константы HTTP для кодов состояний



Имя константы

Величина

Описание

SC_CONTINUE 100 Клиент может продолжать работу
SC_SWITCHING_PROTOCOLS 101 Сервер меняет протоколы в соответствии с содержимым заголовка Upgrade HTTP-запроса
SCJJK 200 Запрос обработан успешно
SC_CREATED 201 Запрос обработан успешно, на сервере в ответ на него создан новый документ
SC_ACCEPTED 202 Запрос был принят, но его обработка еще не закончена
SC NON AUTHORITATIVE INFORMATION 203 Некоторые заголовки ответов могут быть неверными, так как используется копия документа
SC_NO_CONTENT 204 Запрос обработан успешно,, но отсутствует новая информация, которую можно было бы вернуть с ответом
SC_RESET_CONTENT 205 Браузер должен обновить документ, который вызвал отправку запроса на сервер
SC_PARTIAL_CONTENT 206 Сервер выполнил частичный запрос для данного ресурса методом GET
SC_MULTIPLE_CHOICES 300 Запрошенный ресурс представлен в нескольких документах, расположенных в разных местах
SC_MOVED_PERMANENTLY 301 Ресурс перемещен в новое место, где он будет находиться постоянно. Все дальнейшие ссылки на этот ресурс должны использовать новый URI-адрес
SCJWEDJEMPORARI LY 302 Ресурс перемещен в новое место временно. Все дальнейшие ссылки для доступа к этому ресурсу должны использовать прежний URI-адрес
SC_SEE_OTHER 303 Ответ на данный запрос может быть найден с использованием другого URI-адреса
SC_NOT_MODIFIED 304 В результате выполнения условного запроса методом GET оказалось, что данный ресурс доступен, но не был изменен
SC_USE_PROXY 305 Запрашиваемый ресурс должен возвращаться через прокси-сервер, заданный в поле Location
<


Таблица А.19. Константы для кодов ошибок HTTP



Имя константы


Величина


Описание
SC_BAD_REQUEST 400 Запрос, посланный клиентом, синтаксически неверен
SC_UNAUTHORIZED 401 В поле Authorization запроса отсутствует необходимая для аутентификации информация
SC_PAYMENT_REQUIRED 402 Зарезервировано для будущего использования
SC_FORBIDDEN 403 Сервер понимает запрос, но отказывается его выполнить
SC_NOT_FOUND 404 Запрошенный ресурс невозможно найти по указанному адресу
SC_METHOD_NOT_ALLOWED 405 Заданный метод запроса не разрешен для ресурса, идентифицированного с помощью указанного URJ- адреса
SC_NOT_ACCEPTABLE 406 Запрашиваемый ресурс может генерировать ответы только таких MIME-типов, которые несовместимы с типами, заданными клиентом в поле Accept запроса
SC PROXY AUTHENIFICATION REQUIRED 407 Клиент должен пройти аутентификацию на прокси-сервере
SC_REQUEST_TIMEOUT 408 Клиент не послал запрос в тот промежуток времени, когда сервер был готов принять его
SC_CONFLICT 409 Запрос не может быть выполнен из-за конфликта с текущим состоянием ресурса
SCJ30NE 410 Ресурс недоступен более на этом сервере, и не указан адрес для перенаправления запроса
SC_LENGTH_REQUIRED 411 Запрос не может быть выполнен в отсутствие определенного клиентом заголовка Content -Length
SC_PRECONDITION_FAILED 412 Входное условие, заданное в одном или нескольких полях заголовка запроса, при тестировании на сервере оказалось ложным
SC_REQUEST_ENTITYJOO_LARGE 413 Сервер отказывается обрабатывать запрос, так как размер запрашиваемого документа больше, чем сервер готов или способен обрабатывать
SC_REQUESTJJRI_TOO_LONG 414 Сервер отказывается выполнять запрос, так как приведенный в нем URI-адрес слишком длинный для того, чтобы сервер мог его обработать
SC_UNSUPPORTED_MEDIA_TYPE 415 Сервер отказывается выполнять запрос, так как в запросе содержится документ в таком формате, который не поддерживается запрошенным ресурсом для метода, указанного в запросе
SC REQUESTED RANGE NOT SATISFIABLE 416 В запросе содержится невыполнимый для сервера заголовок Range
SC_EXPECTATION_FAILED 417 Сервер не может выполнить то задание, которое указано в заголовке Expect запроса клиента
SC_INTERNAL_SERVER_ERROR 500 Запрос не может быть выполнен по причине ошибки внутри HTTP-сервера
SC_NOT_IMPLEMENTED 501 HTTP-сервер не поддерживает функции, необходимые для выполнения запроса
SC_BAD_GATEWAY 502 HTTP-сервер получил неверный ответ от удаленного сервера, по отношению к которому он выполнял роль прокси-сервера или шлюза
SC_SERVICE_INAVAILABLE 503 HTTP-сервер временно перегружен и не может ответить на запрос
SC_GATEWAY_TIMEOUT 504 Сервер, который используется в качестве прокси- сервера или шлюза, не получил своевременный ответ от удаленного сервера
SC HTTP VERSION NONSUPPORTED 505 Сервер не поддерживает или отказывается поддерживать версию протокола HTTP, используемую в запросе


ПРИМЕЧАНИЕ


Для диагностики кодов ошибок в Microsoft Internet Explorer имеется так называемый дружественный режим, который не позволяет пользователю увидеть фактические сообщения об ошибках в сервлетах или JSP-страницах. Для отключения этого режима выберите команду Tools > Internet Options (Сервис > Свойства обозревателя), в открывшемся окне перейдите на вкладку Advanced (Дополнительно) и снимите флажок Show Friendly Http Error Messages (Показывать уведомление о каждой ошибке сценария).

 




Содержание раздела