我想重写所有以“ api /(funcName)”结尾的URL以调用云函数(funcName)。
在firebase.json中,我设置了如下重写规则。
"rewrites": [
{
"source": "api/:funcName",
"function": ":funcName"
},
{
"source": "**",
"destination": "/index.html"
}
]
但是它不起作用。
我知道了
错误:禁止
您的客户端无权从此服务器获取URL /:funcName / api /(funcName)。
(funcName)是我不想在此处显示的真实函数名称。
答案 0 :(得分:2)
您的重写应包括函数的确切名称。重写系统不支持您在Express中使用的命名通配符路由。如果您想通配带前缀的所有URL,请按照文档中的说明使用glob syntax supported by Firebase Hosting。
{
"source": "api/**",
"function": "funcName"
},
其中“ funcName”是您的代码导出的函数的名称。
答案 1 :(得分:1)
我不确定您是如何发出该错误消息的,但是从我可以很快看到的错误消息中,该错误消息来自Cloud Functions或Firebase Hosting与您的Cloud Function之间的某种东西。
鉴于错误消息来自何处,Firebase Hosting将无法为响应隐藏它。