当前位置: 首页 > 知识库问答 >
问题:

Firebase云功能"您的客户端没有从该服务器获取URL /200的权限"

冷越泽
2023-03-14

我刚刚做了一个Firebase云函数:

exports.deleteAfterSevenDays = functions.https.onRequest((req, res) => {...

我部署了这个函数,得到了一个函数URL。当我请求这个网址从我的浏览器我得到以下消息:

“错误:禁止您的客户端没有从此服务器获取URL/200的权限。”

我刚刚更新到Firebase Blaze计划,因为我认为Spark计划有局限性,但它仍然不起作用。

在我的firebase云函数日志中写着“函数执行耗时572毫秒,完成状态代码:302”。

我的cron作业“由于执行失败太多,已自动禁用”。

你知道怎么了吗?

共有3个答案

孟乐
2023-03-14

如果您在2020年面临这种情况,也可能是由于不同的访问行为:

注意:自2020年1月15日起,默认情况下HTTP函数需要身份验证。您可以指定函数是否允许在部署时或部署后进行未经验证的调用。

https://cloud.google.com/functions/docs/securing/managing-access-iam#allowing_unauthenticated_function_invocation

陶泳
2023-03-14

从云功能文档:

警告:任何低于7.7版的Firebase CLI都部署了新的HTTP和HTTP可调用函数。默认情况下,0是私有的,调用时会抛出HTTP 403错误。在部署任何新功能之前,请明确公开这些功能,或更新Firebase CLI。

就我而言,CLI版本已经过时。如果当前出现403错误,请尝试以下操作:

  1. 删除您的云功能
封鸿雪
2023-03-14

云函数应该有一个名为“所有用户”的成员角色,无论授权如何,都可以从任何地方/任何人调用该函数。

未经授权:

  1. 转到云功能选项卡
  2. 选择您的云功能(复选框)
  3. 单击右侧权限选项卡下的“添加成员”
  4. 在“新会员”下输入“allUsers”
  5. 选择角色作为“云功能”-

经授权:

在云功能上设置授权总是一个好的做法

注意:云函数抛出错误“403禁止-您的客户端没有获取URL的权限”应由授权用户调用。

简单测试:

>

  • 单击顶部的Cloud shell(图标)终端

    类型-gcloud auth打印标识令牌

    复制生成的令牌

    正在形成调用云函数时要传递的授权密钥4.1授权:承载生成的\u令牌

    调用云函数时使用上述授权密钥

    注:

    1. 切勿向诱惑者提供云功能

  •  类似资料:
    • 我是Spring Cloud的新手,我正在尝试使用存储在github上的属性文件连接服务器和客户端。 我的服务器应用程序。yml文件的配置如下: github回购协议链接在这里,主要属性和替代属性 我的客户端应用程序具有以下设置 Rest控制器是: 所有${变量}van都可以在位于git存储库中的属性文件中找到。 服务器运行正常,但是客户端给了我以下错误 创建名为“rateController”的

    • null 云存储桶是云功能工作所必需的吗?如果没有,我怎么能回到这些变化发生之前的地方。请引导我。

    • 我有一个react本机应用程序,它使用与。NET Core2.1通信的signalR。 套接字连接没有任何错误。一切都很好。但是服务器不能响应客户端的ping消息,并返回504给客户端。当返回504时,客户端的连接关闭。在hubconnection.onclose()处理。然后客户端需要重新连接。 proxy_read_timeout可以设置为高毫秒。但很乱。 所以我不能在客户机上有效地使用kee

    • 这是我关于StackOverflow的第一个问题,我希望我遵守了预期的标准。 我已经从不再在这里工作的其他人那里接管了一些代码,我几乎被困在这里。我搜索并询问了一些同事(不幸的是没有太多Java经验),但似乎没有人能帮助我。搜索也没有真正帮助我。 我正在从客户端向Netty服务器发送Json请求,故意不使用Netty实现。目前它只是一个简单的Java套接字,但其目的是让Flask客户端向Netty

    • 通过运行带有标志的工具,我查看了调试和跟踪日志,但我无法找到客户机何时/是否调用服务器,以及服务器实际上在寻找哪个config-data.properties文件。我有点不知道该如何进行。 下面是我的服务器: 在文件夹中,包含以下内容的文件: 我尝试了名为service-config.properties、service-config-client.properties、service-confi

    • 在Firebase存储中上传了一个具有Firebase功能的文件后,我想获得该文件的下载url。 我有这个: 对象文件有很多参数。甚至是一个名为。但是,如果尝试访问此链接,则会出现以下错误: 匿名用户没有Storage.Objects.获取对象访问... 有人能告诉我如何获得公共下载URL吗? 谢谢