Встречается на собеседованиях • сегодня

Когда возникают проблемы с CORS

CORS (Cross-Origin Resource Sharing) проблемы возникают, когда браузер блокирует запросы между разными доменами, если сервер не разрешает их явно. Основные причины:

  1. Разные origin'ы (домен, протокол или порт) между клиентом и сервером.
  2. Отсутствие заголовков CORS на сервере (Access-Control-Allow-Origin, Access-Control-Allow-Methods и др.).
  3. Предварительные запросы (preflight) для сложных запросов (не GET/POST с простыми заголовками).

Пример ошибки в консоли:

text
Access to fetch at 'https://api.example.com' from origin 'https://your-site.com' has been blocked by CORS policy.

Решение:

  • Настроить сервер для отправки правильных заголовков:
http
Access-Control-Allow-Origin: https://your-site.com
Access-Control-Allow-Methods: GET, POST, OPTIONS
  • Для разработки можно использовать прокси (например, в vite.config.js):
js
server: {
  proxy: {
    '/api': 'https://api.example.com'
  }
}
  • В крайнем случае — отключить CORS в браузере (только для разработки!).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы