You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Go语言Gen2 Google Cloud Function在Firebase路由中的认证权限问题

Firebase路由重写Gen2 Cloud Function 403问题排查与解决

1. 修正firebase.json重写规则格式

Gen2 Cloud Functions要求重写规则必须显式指定区域和函数ID,不能沿用Gen1的简化格式。正确配置示例:

{
  "hosting": {
    "rewrites": [
      {
        "source": "/readrequest/**",
        "function": {
          "functionId": "readrequest",
          "region": "us-central1"
        }
      }
    ]
  }
}
  • 确保source路径与你实际访问的Firebase路由完全匹配(注意大小写敏感)
  • 不要遗漏region字段,你的函数部署在us-central1,必须明确声明

2. 验证Cloud Function权限配置

即使你设置了开放所有人访问,仍需确认权限细节:

  • 进入GCP控制台的Cloud Functions页面,找到readrequest函数
  • 切换到权限标签,确认allUsers已被授予Cloud Functions Invoker角色
  • 避免误配置为Viewer或其他无调用权限的角色

3. 重新部署Firebase Hosting

修改firebase.json后,必须执行部署命令让规则生效:

firebase deploy --only hosting

未部署的规则不会生效,这是常见的疏漏点

4. 排查规则优先级与路径匹配问题

若写错函数名仍返回相同403,说明重写规则未正确匹配:

  • 检查是否有优先级更高的规则(比如"source": "**")排在当前规则之前,导致函数规则被覆盖
  • 确认source路径无拼写错误,比如多余的斜杠、大小写不一致等

5. 验证函数本身的可访问性

直接通过GCP函数域名测试:https://us-central1-<你的项目ID>.cloudfunctions.net/readrequest

  • 若此地址正常访问,说明问题完全在Firebase重写规则配置
  • 若此地址也返回403,重新检查函数的部署状态和权限设置

内容的提问来源于stack exchange,提问作者Mquinteiro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 19:35:23