CORS: разрешение браузеру читать ответ
CORS позволяет серверу явно определить, каким другим источникам браузер может предоставить доступ к определённому ответу.
Назначение
CORS позволяет серверу явно определить, каким другим источникам браузер может предоставить доступ к определённому ответу.
Как это работает
Некоторые запросы предваряются OPTIONS-проверкой, другие отправляются без неё. Наличие CORS не означает аутентификацию: сервер всё равно проверяет пользователя, права и входные данные.
Пример
Access-Control-Allow-Origin: https://app.example.com
Vary: Origin
Что должно получиться
Заголовок разрешает указанный источник, если остальные условия запроса тоже выполнены. Пример не является универсальной конфигурацией для запросов с учётными данными.
Граница применения и частая ошибка
Режим fetch no-cors не превращает закрытый ответ в читаемый JSON. Ответ может быть непрозрачным; исправление обычно требует корректной серверной политики, а не отключения защиты браузера.
Самостоятельная проверка
В учебном окружении сравните простой запрос и запрос с нестандартным заголовком. Изучите OPTIONS и основной ответ в Network, не изменяя CORS на действующих проектах.