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

Какие знаешь проблемы связанные с CORS

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

  1. Preflight-запросы — для сложных запросов (не GET/POST с простыми заголовками) браузер сначала отправляет OPTIONS-запрос, что увеличивает время работы.

  2. Ограниченные заголовки — сервер должен явно разрешать нужные заголовки в ответе, иначе браузер их заблокирует.

  1. Куки и авторизация — для запросов с credentials (withCredentials: true) сервер должен отвечать Access-Control-Allow-Credentials: true и явно указывать домен в Access-Control-Allow-Origin.

Пример ошибки:

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

Решение на сервере (Node.js пример):

javascript
app.use((req, res, next) => {
  res.header('Access-Control-Allow-Origin', 'https://frontend.com');
  res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
  res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization');
  res.header('Access-Control-Allow-Credentials', 'true');
  next();
});

Обходные пути для разработки: прокси-сервер или отключение CORS в браузере (не для продакшена).

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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