Доступ к внешнему API из приложения Firebase Hosted React, созданного с помощью CRA - PullRequest
0 голосов
/ 14 января 2020

У меня есть приложение React (CRA), которое размещено на Firebase, и я пытаюсь получить доступ к внешнему API отдыха (используя javascript fetch()), но этот API не находится в том же домене, что и Интернет -app, выдает ошибку "CORS". API имеет заголовок Access-Control-Allow-Origin как *. Я могу обойти это, используя прокси-сервер в package.json в режиме разработки, но после размещения приложения ничего не получается.

Пробовал следующие вещи

  • Обновлено Firebase.json включить заголовки
  • no-cors режим при использовании fetch()

1 Ответ

2 голосов
/ 14 января 2020

Правильный заголовок CORS - Access-Control-Allow-Origin, а не Access-Control-Origin. Кроме того, в зависимости от характера запроса вам может потребоваться предварительный запрос , и вы не сможете использовать * в качестве источника.

На клиенте ничего нельзя сделать сторона для обхода CORS - она ​​явно разработана как механизм безопасности браузера для предотвращения неожиданных междоменных запросов. Если у вас есть контроль над сервером API, вы сможете это исправить. Если вы этого не сделаете, вам может потребоваться использовать облачную функцию для прокси-запросов к внешнему API.

...