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), тоді кеш ПОВИНЕН розглядати запис кешу як застарілий.