9.2 ОПЦИИ
Метод OPTIONS представляет запрос информации о доступных параметрах связи в цепочке запрос / ответ, идентифицируемой Request-URI. Этот метод позволяет клиенту определять параметры и / или требования, связанные с ресурсом, или возможности сервера, не предполагая действия ресурса или не инициируя извлечение ресурса.
Ответы на этот метод не кэшируются.
Если запрос OPTIONS включает тело объекта (как указано наличием Content-Length или Transfer-Encoding), тогда тип мультимедиа ДОЛЖЕН быть указан в поле Content-Type. Хотя эта спецификация не определяет никакого использования такого тела, будущие расширения HTTP могут использовать тело OPTIONS для выполнения более подробных запросов на сервере. Сервер, который не поддерживает такое расширение, МОЖЕТ отклонить тело запроса.
Если Request-URI является звездочкой ("*"), запрос OPTIONS предназначен для применения к серверу в целом, а не к конкретному ресурсу. Поскольку параметры связи сервера обычно зависят от ресурса, запрос «*» полезен только как метод «ping» или «no-op»; он не делает ничего, кроме того, что позволяет клиенту проверить возможности сервера. Например, это можно использовать для проверки прокси на соответствие HTTP / 1.1 (или его отсутствие).
Если Request-URI не является звездочкой, запрос OPTIONS применяется только к опциям, доступным при взаимодействии с этим ресурсом.
Ответ 200 ДОЛЖЕН включать любые поля заголовка, которые указывают дополнительные функции, реализованные сервером и применимые к этому ресурсу (например, Разрешить), возможно, включая расширения, не определенные в этой спецификации. Тело ответа, если таковое имеется, ДОЛЖНО также содержать информацию о параметрах связи. Формат для такого тела не определен этой спецификацией, но может быть определен будущими расширениями HTTP. Согласование содержимого МОЖЕТ использоваться для выбора соответствующего формата ответа. Если тело ответа не включено, ответ ДОЛЖЕН включать поле Content-Length со значением поля «0».
Поле заголовка запроса Max-Forwards МОЖЕТ использоваться для назначения конкретного прокси в цепочке запросов. Когда прокси-сервер получает запрос OPTIONS для absoluteURI, для которого разрешена переадресация запроса, прокси-сервер ДОЛЖЕН проверить поле Max-Forwards. Если значение поля Max-Forwards равно нулю («0»), прокси НЕ ДОЛЖЕН пересылать сообщение; вместо этого прокси-сервер ДОЛЖЕН ответить своими собственными опциями связи. Если значение поля Max-Forwards является целым числом больше нуля, прокси-сервер ДОЛЖЕН уменьшать значение поля, когда он перенаправляет запрос. Если в запросе нет поля Max-Forwards, то перенаправленный запрос НЕ ДОЛЖЕН включать поле Max-Forwards.
9,4 ГОЛОВА
Метод HEAD идентичен GET, за исключением того, что сервер НЕ ДОЛЖЕН возвращать тело сообщения в ответе. Метаинформация, содержащаяся в заголовках HTTP в ответ на запрос HEAD, ДОЛЖНА быть идентична информации, отправленной в ответ на запрос GET. Этот метод может использоваться для получения метаинформации о сущности, подразумеваемой запросом, без передачи самого тела сущности. Этот метод часто используется для проверки гипертекстовых ссылок на достоверность, доступность и последние изменения.
Ответ на запрос HEAD МОЖЕТ быть кэшируемым в том смысле, что информация, содержащаяся в ответе, МОЖЕТ использоваться для обновления ранее кэшированного объекта из этого ресурса. Если новые значения поля указывают, что кэшированный объект отличается от текущего объекта (как было бы указано изменением Content-Length, Content-MD5, ETag или Last-Modified), то кэш ДОЛЖЕН трактовать запись в кэше как устаревшую.