【问题标题】:Authorize Google Cloud Vision API to Google Storage image将 Google Cloud Vision API 授权给 Google Storage 映像
【发布时间】:2016-06-10 04:17:09
【问题描述】:

从 Node 开始,我正在尝试使用 Google Cloud Vision API 来分析存储在 Google Storage 中的图像。我已经成功地对图像进行了 base64 编码并上传了它,但我想通过执行我在 Google 存储中的文件来加快这个过程。我的要求就是这样,

{ "requests":[ { "image":{ "source": { "gcsImageUri" : "gs://mybucket/10001.jpg" } }, "features":[ { "type":"LABEL_DETECTION ", "maxResults":10 } ] } ] }

但我在通话中收到此错误,

{ "responses": [ { "error": { "code": 7, "message": "image-annotator::User 没有权限。: ACCESS_DENIED: 匿名调用者没有 storage.objects.get 访问权限对象 mybucket/10001.jpg。” } } ] }

我没有为这个请求使用任何谷歌 SDK 或 node_modules,只是一个浏览器 API 密钥和 http 模块。我必须在 Cloud Storage 中设置一些权限以允许 Vision API 访问存储桶中的对象吗?如果是这样,那会是什么,我是 Google Cloud Platform 的新手,但在 AWS IAM 角色方面拥有丰富的经验。

谢谢, 蝰蛇

【问题讨论】:

    标签: google-cloud-storage google-cloud-platform google-vision


    【解决方案1】:

    您可能使用不公开可读的 GCS 图像匿名调用 Cloud Vision API。您可能会提供 API 密钥,但 API 密钥不会对请求进行身份验证。您可以通过以下两种方式之一解决此问题:

    1. 向 Cloud Vision API 发出经过身份验证的请求,以有权读取 GCS 文件的特定用户身份进行身份验证,或者

    2. 将 GCS 文件设置为允许匿名读取访问。您可以从控制台通过选中对象的“公共可读”复选框或使用如下命令行客户端来执行此操作:gsutil acl ch -g AllUsers:R gs://mybucket/10001.jpg

    【讨论】:

    • 太棒了。所以取得进展,使用 google-auth-library-nodejs 我能够获得一个包含不记名令牌的授权标头,现在当我使用添加的令牌进行调用时,我收到此错误,“消息”:“项目没有激活了 vision.googleapis.com API。请为项目 google.com:cloudsdktool (#32555940559) 启用 API。”知道如何将其“激活”到我正在使用的服务帐户吗?谢谢!
    • 如果您的项目没有启用 Vision API,请点击此链接:console.developers.google.com/apis/api/vision.googleapis.com/…,然后确保您的项目在右上角被选中,然后点击“启用”。但是,我认为这不是您的问题:“google.com:cloudsdktool”不是您的项目。这是一个演示项目。确保您使用自己项目的客户端 ID 而不是演示项目进行身份验证。
    • 您似乎正在使用gcloud auth login 来获取您的身份验证令牌。尝试下载service account key 并改用gcloud auth activate-service-account,或setting GOOGLE_APPLICATION_CREDENTIALS 环境变量指向服务帐户json文件的路径。
    【解决方案2】:

    其实有两种方式。第一种方式是 1)打开你的google cloud vision的bucket,会有一个叫“share public”的选项,把你想测试的文档标记为yes。然后运行代码,你会得到所需的结果

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-07
      • 2018-09-23
      • 2016-06-02
      • 2017-07-07
      • 1970-01-01
      • 2019-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多