Для чего нужен HTTP-запрос с методом OPTIONS?

Для чего нужен HTTP-запрос с методом OPTIONS? позволяет узнать, какие методы поддерживает сервер используется браузером для проверки CORS-политики (preflight request) передаёт в заголовках перечень разрешённых…

Короткий ответ

Что ответить на собеседовании

Для чего нужен HTTP-запрос с методом OPTIONS? позволяет узнать, какие методы поддерживает сервер используется браузером для проверки CORS-политики (preflight request) передаёт в заголовках перечень разрешённых HTTP-методов и допустимых заголовков помогает клиенту определить, разрешён ли основной запрос с нестандартным методом или заголовками не должен менять состояние сервера (безопасный и идемпотентный) применяется при междоменных запросах для соблюдения требований безопасности снижает риск ошибок при кросс-доменном доступе TOTAL: 6 bullets

Подробный разбор

Ответ с пояснениями

Для чего нужен HTTP-запрос с методом OPTIONS?

  • позволяет узнать, какие методы поддерживает сервер
  • используется браузером для проверки CORS-политики (preflight request)
  • передаёт в заголовках перечень разрешённых HTTP-методов и допустимых заголовков
  • помогает клиенту определить, разрешён ли основной запрос с нестандартным методом или заголовками
  • не должен менять состояние сервера (безопасный и идемпотентный)
  • применяется при междоменных запросах для соблюдения требований безопасности
  • снижает риск ошибок при кросс-доменном доступе TOTAL: 6 bullets

Подробный ответ

Основной ответ

Метод OPTIONS в HTTP-запросе нужен, чтобы выяснить, какие методы и другие параметры доступны для конкретного ресурса на сервере. Иными словами, клиент заранее запрашивает информацию о том, разрешены ли, например, GET, POST или PUT, а также нужные заголовки, прежде чем отправлять основной запрос. Наиболее часто такой механизм встречается в CORS (Cross-Origin Resource Sharing): браузер выполняет предварительный OPTIONS-запрос (preflight), проверяя настройки безопасности сервера.

Ключевые моменты

  • CORS preflight: Если фронтенд формирует запрос с нестандартным методом или заголовками, браузер сначала отправляет OPTIONS. Это позволяет проверить, разрешает ли сервер подобное обращение и соответствует ли оно политике безопасности.
  • Идентификация поддерживаемых методов: С помощью OPTIONS клиент заранее получает сведения о допустимых методах конкретного ресурса, благодаря чему может не допустить лишних запросов и связанных с ними ошибок.
  • Отделение "узнавания" от действий: OPTIONS предназначен для получения информации и не должен изменять серверное состояние. Поэтому этот метод считается идемпотентным и подходит для диагностических проверок.

Практический контекст

В современных SPA на React 18+ с backend на Node.js или Django браузер часто автоматически выполняет OPTIONS при вызове fetch с нестандартными заголовками Authorization или Content-Type, отличающимся от application/x-www-form-urlencoded. На серверной стороне обычно настраивают middleware: он отвечает на OPTIONS статусом 204 и передаёт необходимые CORS-заголовки. Это помогает избежать ошибок и задержек при взаимодействии front и backend.

Практика в реальном времени

Подготовьтесь к следующему собеседованию

Interview Boost учитывает вакансию, резюме и технологии и помогает сформулировать ответ прямо во время интервью.

Начать подготовку