如何在谷歌云函数中正确路由所有nodejs express应用程序请求



我创建了一个运行良好的快速应用程序,但是当我尝试使用Firebase云函数托管Web应用程序时,url重写Firebase.json中的规则似乎无法正常工作。

函数文件夹下的索引.js文件中的代码片段

exports.app = functions.https.onRequest(app);

以下是Firebase.json文件中的片段

"rewrites": [
{
"source": "/**{,/**}",
"function": "app"
}

我也试过

"rewrites": [
{
"source": "**",
"function": "app"
}

但这些都不起作用。 我希望来自"http://url/someroute"的所有 Web 应用程序的 url 请求都路由到"http://url.com/app/someroute">

现在,要使所有这些工作,我必须将我的超链接从"/someroute"更改为"/app/someroute">

"rewrites": [
{
"source": "**",
"function": "app"
}

这工作得很好..只需检查您是否还选择了Firebase托管以及函数,或者进行firebase初始化托管,然后分别使用firebase init函数,然后从公共目录中删除index.html即可。

问题是你试图重定向到一个函数,而不是一个路由,所以如果你想实际改变路由,你必须使用目的地而不是函数,如下所示:

"rewrites": [
{
"source": "**",
"destination": "/app/**"
}

或类似的东西,这里有一个社区帖子,更详细地解释了这一点,以及重写文档,可能会进一步帮助您

相关内容

  • 没有找到相关文章

最新更新