Firebase云功能“;您的客户端没有从该服务器获取URL/200的权限;
我刚刚制作了一个firebase云函数:Firebase云功能“;您的客户端没有从该服务器获取URL/200的权限;,firebase,google-cloud-functions,Firebase,Google Cloud Functions,我刚刚制作了一个firebase云函数: exports.deleteAfterSevenDays = functions.https.onRequest((req, res) => {... 我部署了这个函数并得到了一个函数URL。当我从浏览器请求此url时,我收到以下消息: “错误:禁止您的客户端没有获取URL/200的权限。” 从这个服务器。” 我刚刚更新了firebase Blaze计划,因为我认为Spark计划有局限性,但它仍然不起作用 在我的firebase云函数日志中写着“
exports.deleteAfterSevenDays = functions.https.onRequest((req, res) => {...
我部署了这个函数并得到了一个函数URL。当我从浏览器请求此url时,我收到以下消息:
“错误:禁止您的客户端没有获取URL/200的权限。”
从这个服务器。”
我刚刚更新了firebase Blaze计划,因为我认为Spark计划有局限性,但它仍然不起作用
在我的firebase云函数日志中写着“函数执行耗时572毫秒,完成状态代码:302”
我的cron作业“由于执行失败太多,已自动禁用”
您看到哪里出了问题吗?将目标云函数的IAM角色(云函数调用器)更改为allUsers应能解决此问题 云函数应具有一个名为“所有用户”的成员角色,以从任何地方/任何人调用此函数,而不考虑授权 未经授权:
我知道这没有意义,或者不是一个真正的解决方案,但我通过让我的帐户成为Firebase项目的
所有者来解决它。当我担任编辑时,它工作得很好,但突然停止工作,并将我的帐户设置为所有者
暂时解决了这个问题
我猜这与某些帐户能够正确访问服务帐户有关,该帐户是Firebase函数和Google Cloud API的实际接口。来自云函数文档:
警告:新的HTTP和HTTP可调用函数与任何
低于7.7.0版的Firebase CLI在默认情况下是私有的,并抛出
调用HTTP 403时出错。或者显式地使这些函数
公共,或在部署任何新应用程序之前更新Firebase CLI
功能
就我而言,CLI版本已经过时。如果当前出现403错误,请尝试以下操作:
删除你的云功能
更新Firebase CLInpm安装-g Firebase工具
重新部署您的功能
如果您在2020年面临这种情况,也可能是由于不同的访问行为:
注意:自2020年1月15日起,HTTP功能需要通过
违约您可以指定函数是否允许未经身份验证的
在部署时或部署后调用
就我而言,我在《邮差》中犯了错误
当我键入请求主体时,我并没有将格式从文本切换到JSON
检查该部分。Hi@Alex9494您解决了这个问题吗?干杯。嗨,伊万还没有,但我确实打算“很快”解决它。。。第一个得到答案的人把它交给另一个看来我找到了问题的原因。这只是我调用的函数中的一个崩溃。一旦我修复了它,请求开始返回200。这也是我的firebase云函数代码中的一个问题。使用res.redirect()、res.send()或res.end()终止HTTP函数我也遇到了同样的问题-您能澄清一下“针对allUsers的目标云函数”是什么意思吗?这看起来是一个安全风险?您能验证更改为allUsers是否没有任何安全风险吗?@Nikhil没有,您总是在处理公共https函数,可能是自定义处理其中的身份验证。我也面临着同样的问题。我今天在firebase项目中部署了一个新的云功能,但我无法执行它。给出完全相同的错误。firebase项目中现有的功能运行良好。因此,问题似乎是针对最近新部署的函数。这里也有同样的问题。你们能找到解决办法吗?我尝试过授权,但令牌似乎过期了。我无法使用昨天的相同令牌:(此令牌是idToken-仅在3600秒后有效,之后您应该更新它。文档说明,这是功能的Google云接口,而不是Firebase接口--转到:这解决了我的问题。我安装了最新的Firebase工具,在Firebase控制台上删除了我的功能并重新部署了它。Et voilá.THA谢谢!除了更新cli之外,我还必须启用这里给出的未经验证的函数调用。非常感谢!!!!