«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему мое приложение React получает ошибку CORS при доступе к API поддомена: «не удалось получить доступ к поддомену из основного домена: нет \'Access-Control-Allow-Origin\'»?

Почему мое приложение React получает ошибку CORS при доступе к API поддомена: «не удалось получить доступ к поддомену из основного домена: нет \'Access-Control-Allow-Origin\'»?

Опубликовано 23 декабря 2024 г.
Просматривать:658

Why Does My React App Get a CORS Error When Accessing a Subdomain API: \

Понимание ошибок CORS: 'не удалось получить доступ к поддомену из основного домена: нет 'Access-Control-Allow-Origin''

Обмен ресурсами между источниками (CORS) — это механизм, который позволяет различным доменам взаимодействовать друг с другом. Когда сервер API работает в субдомене, а приложение React работает в основном домене, могут возникнуть ошибки CORS, такие как ошибка «не удалось получить доступ к субдомену из основного домена: нет ошибки Access-Control-Allow-Origin».

Исследование проблемы

Проверьте предварительный запрос в Chrome DevTools, чтобы проверить наличие кэшированных ответов и предварительных запросов. Выполните предполетный запрос с помощью такого инструмента, как Curl, не забыв добавить параметр -i для вывода заголовков ответа.

Анализ случая

  • Случай 1: это подход использует конфигурацию CORS по умолчанию, которая позволяет использовать подстановочный знак. Однако тестирование показывает, что оно работает правильно.
  • Случай 2: Настройка разрешенных источников, методов и заголовков также оказывается успешной.
  • Случай 3: Еще одним жизнеспособным решением является обработка заголовков CORS вручную.

Решение проблемы Проблема

Неправильная конфигурация в целевой группе AWS Load Balancer (на основе решения OP)

Основной причиной этой конкретной проблемы была неправильная конфигурация в целевой группе AWS Load Balancer. Протокол целевой группы был установлен на HTTPS, хотя соответствующие сертификаты SSL не были предоставлены. Исправление протокола решило проблему.

Советы по отладке

  • Отключите кеширование в Chrome DevTools, чтобы избежать кеширования предварительных ответов.
  • Чтобы устранить предварительные запросы, отправьте их непосредственно в службу. потенциальное вмешательство прокси.
  • Распечатайте буфер запроса (например, используя httputil.DumpRequest) для целей отладки.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3