CORS
CORS — совместное использование ресурсов между источниками
Суть в одном предложении
CORS — механизм браузера, позволяющий контролируемо разрешать кросс-доменные запросы к API.
Краткое определение
CORS — механизм браузера, который ограничивает или разрешает запросы к ресурсам на другом домене/порту/протоколе.
Оригинал и перевод
- Язык: английский
- Оригинал: CORS
- Расшифровка: Cross-Origin Resource Sharing
- Буквальный перевод: обмен ресурсами между разными origin
Синонимы и варианты написания
- Cross-Origin Resource Sharing
Происхождение
CORS появился как стандартный способ контролируемо «открывать» API для браузеров, сохраняя модель безопасности Same-Origin Policy.
Где используется
- SPA и фронтенд, обращающиеся к API на другом домене
- REST/HTTP API для браузерных клиентов
Когда это важно
При разработке фронтенда и API на разных доменах: без настройки CORS браузер блокирует ответ.
Подробное объяснение
Если frontend делает запрос на другой origin, браузер может выполнить preflight (OPTIONS) и проверяет заголовки:
Access-Control-Allow-OriginAccess-Control-Allow-MethodsAccess-Control-Allow-HeadersAccess-Control-Allow-Credentials
Важно: CORS — это не защита сервера, это ограничение в браузере. Сервер всё равно должен проверять авторизацию.
Аналоги и связанные термины
- Same-Origin Policy
- Preflight request
- Credentials mode
- CSRF (часто путают, но это другое)
Пример использования
«API работает, но в браузере ошибка — значит не настроен CORS: сервер не отдаёт Allow-Origin для домена фронта.»
Мини‑FAQ
- CORS защищает сервер? Ответ: Нет, CORS — ограничение в браузере. Сервер по-прежнему должен проверять авторизацию и валидировать запросы.
Смотри также
- Same-Origin Policy
- Preflight request