gpt4 book ai didi

Firebase 托管上的 Angular 9 项目无法传递 https 请求

转载 作者:行者123 更新时间:2023-12-04 02:38:39 25 4
gpt4 key购买 nike

我在我的 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>

最佳答案

在本地环境中运行 Angular 应用程序以重定向某些 URL 段时包含的代理配置文件是 Angular 开发服务器提供的一项功能。

由于您使用的是 Firebase,Firebase 还提供了类似的重定向功能,可以在 firebase.json 文件中进行配置。由于您使用 firebase 进行部署,我假设您已经有一个 firebase.json 文件。如果没有,请访问Firebase CLI官方文档将其安装在您的本地环境中。现在运行 firebase init 命令将生成一个基本的 firebase.json 文件。

包括重定向选项,如下例所示:

firebase.json

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

让我们分解一下我们刚刚做了什么。 source 属性采用 URL 段作为 Firebase 执行重定向的值。 :path* 指定应捕获 /api 之后的任何 URL 段并将其存储在变量 :path 中。现在,在目标属性中,指定目标域,后跟 /:path 以执行重定向。 type 属性指定 Http 响应代码 301 来表示永久重定向(在您的情况下)。您可以在重定向数组中添加多个重定向。

有关 Firebase 中重定向配置的详细信息,请参阅 this page来自 Firebase 官方文档。除了重定向之外,您还可以找到可在 Firebase 托管中配置的所有选项。

关于Firebase 托管上的 Angular 9 项目无法传递 https 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60462011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com