9.2 OPTIONS.
Метод OPTIONS представляет запрос информации об опциях соединения,
доступных в цепочке запросов/ответов, идентифицируемой
запрашиваемым URI (Request-URI). Этот метод позволяет клиенту
определять опции и/или требования, связанные с ресурсом, или
возможностями сервера, но не производя никаких действий над
ресурсом и не инициируя его загрузку.
Если ответ сервера - это не сообщение об ошибке, то ответ НЕ
ДОЛЖЕН содержать иной информации объекта, кроме той, которую можно
рассматривать как опции соединения (например Allow - можно
рассматривать как опцию соединения, а Content-Type - нет). Ответы
на этот метод не кэшируются.
Если запрашиваемый URI (Request-URI) - звездочка ("*"), то запрос
OPTIONS предназначен для обращения к серверу в целом. Если код
состояния в ответе - 200, то ответу СЛЕДУЕТ содержать любые поля
заголовка, которые указывают опциональные возможности, реализуемые
сервером (например, Public), включая любые расширения, не
определенные данной спецификацией, в дополнение к соответствующим
общим полям или полям заголовка ответа (response-header). Как
описано в разделе 5.1.2, запрос "OPTIONS *" может быть применен
через прокси-сервер с определением адресуемого сервера в
запрашиваемом URI (Request-URI) с пустым путем.
Если запрашиваемый URI (Request-URI) не звездочка ("*"), то запрос
OPTIONS применяется к опциям, которые доступны при соединении с
указанным ресурсом. Если код состояния ответа - 200, то ответу
СЛЕДУЕТ содержать любые поля заголовка, которые указывают
опциональные возможности, реализуемые сервером и применимые к
указанному ресурсу (например, Allow), включая любые расширения, не
определенные данной спецификацией, в дополнение к соответствующим
общим полям или полям заголовка ответа (response-header). Если
запрос OPTIONS передается через прокси-сервер, то последний
редактирует ответ, исключая те опции, которые не предусмотрены
возможности этого прокси-сервера.