错误:(gcloud.alpha.functions.deploy)ResponseError:状态=[403],代码=[Forbidden],消息=[无法访问项目中的Google Cloud Functions API]

10

我是新手使用谷歌的API。

我正在按照谷歌制作的以下教程逐步操作:https://cloud.google.com/functions/docs/tutorials/ocr

我想部署谷歌提供的特定函数(processImage函数)。

我在控制台中输入了以下内容:

gcloud alpha functions deploy ocr-extract --stage-bucket [YOUR_STAGING_BUCKET_NAME] --trigger-bucket [YOUR_IMAGE_BUCKET_NAME] --entry-point processImage

但它给了我这个错误:

Error: (gcloud.alpha.functions.deploy) ResponseError: status=[403], code=[Forbidden], message=[Cannot access Google Cloud Functions API in project

您是否在cloud.google.com上启用了云函数?并且,您的帐户是否被Google列入白名单以获得访问权限? - xrd
谢谢您的回复。是的,我已经启用了必要的API并填写了白名单申请表。我的问题是,除了Google提供的OCR教程之外,我还需要做些什么吗? https://cloud.google.com/functions/docs/tutorials/ocr 我非常感谢您的帮助。 - DavidQuezada7
为了确保,您并没有在命令中实际使用 YOUR_STAGING_BUCKET_NAME 吧?您会将其替换为您真正的存储桶名称,对吗? - xrd
是的,我将其重命名为“stagingbucketlatert”(latert是我的项目名称)。顺便说一句,我认为这是凭据的问题,在那个教程中,我没有被要求添加凭据,这对我来说很奇怪,我想..我只在那个教程的一个步骤中有疑问,就是我配置conf.json文件的地方。我不太确定“YOUR_RESULT_TOPIC_NAME”是什么意思,我只是随便起了一个名字... - DavidQuezada7
也许这听起来很傻,但我不太确定何时使用谷歌提供的 index.js 文件?因为在那个文件中,他们进行了请求和权限的设置。 - DavidQuezada7
3个回答

11

我遇到了相同的错误。在命令提示符终端中执行gcloud init后,问题得到了解决。该命令将我的GCP项目链接到包含文件的文件夹。之后您提供的命令就起作用了。


2
这个方案可行。另一种选择是使用 gcloud auth revoke 命令注销当前账户,然后使用 gcloud auth login 命令进行所需账户的认证。 - Mike S.

2

首先需要初始化SDK。

  1. 运行gcloud init
  2. 配置您的登录帐户并选择项目名称。

0

这可能有点傻,但请确保在gcloud仪表板网站的项目设置中启用云函数API。

enter image description here


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接