Вопрос проверяет понимание CORS и предварительных запросов в веб-разработке.
Запрос OPTIONS отправляется браузером автоматически перед некоторыми HTTP-запросами (например, POST или DELETE с особыми заголовками). Это часть механизма CORS — он проверяет, разрешён ли запрос сервером.
Когда фронтенд и бэкенд на разных доменах (например, frontend.com и api.backend.com), браузер блокирует "небезопасные" запросы из соображений безопасности. Чтобы убедиться, что сервер разрешает такие запросы, браузер сначала отправляет OPTIONS (preflight-запрос).
Пример:
Фронтенд отправляет POST /data с заголовком Content-Type: application/json.
Браузер сначала отправляет:
OPTIONS /data HTTP/1.1
Host: api.backend.com
Origin: https://frontend.com
Access-Control-Request-Method: POSTСервер отвечает:
HTTP/1.1 204 No Content
Access-Control-Allow-Origin: https://frontend.com
Access-Control-Allow-Methods: POST, GETЕсли ответ сервера разрешает запрос, браузер отправляет основной POST.