Angular 9 проект на хостинге Firebase не смог передать запросы https - PullRequest
0 голосов
/ 29 февраля 2020

Я использую прокси в моем angular проекте, как показано ниже.

{
  "/api": {
    "target" : "https://<domain_name>/",
    "secure": false
  }
}

он отлично работает локально с ssl для запросов HTTPS POST, выполнив команду,

ng serve --ssl true --proxy-config proxy.conf.json

Но после того, как я размещаю его на хостинге firebase, он всегда выдает ошибку ниже при каждом запросе POST.

Http failure during parsing for https://<app_name>.firebaseapp.com/api/<route_name>

1 Ответ

2 голосов
/ 29 февраля 2020

Файл конфигурации прокси, который вы включаете при запуске приложения Angular в локальной среде для перенаправления определенных сегментов URL, является функцией, предоставляемой сервером Angular dev.

Поскольку вы используете firebase, firebase также предоставляет аналогичную функцию перенаправления, которую можно настроить в файле firebase.json. Поскольку вы используете Firebase для развертывания, я предполагаю, что у вас уже есть файл Firebase. json. Если нет, посетите официальные документы Firebase CLI , чтобы установить его в своей локальной среде. При запуске команды firebase init будет сгенерирована базовая c firebase. json file.

Включите параметр перенаправления, как показано в примере ниже:

firebase. json

"hosting": {
  // ... other configurations ...
  "redirects": [ {
    "source": "/api/:path*",
    "destination": "https://<gcp_domain_name>/:path",
    "type": 301
  }
}

Давайте разберемся с тем, что мы только что сделали. Свойство source принимает сегмент URL в качестве значения для Firebase для выполнения перенаправления. :path* указывает, что любой сегмент URL после /api должен быть захвачен и сохранен в переменной :path. Теперь в свойстве назначения укажите целевой домен, а затем /:path для выполнения перенаправления. Свойство type задает Http Response code 301 для представления постоянного перенаправления (в вашем случае). Вы можете добавить более одного перенаправления в массив перенаправлений.

Для получения дополнительной информации о конфигурации перенаправления в Firebase см. эту страницу в официальных документах Firebase. Помимо перенаправления, вы можете найти все параметры, которые можно настроить на хостинге Firebase.

...