【问题标题】:Default GCS bucket name默认 GCS 存储桶名称
【发布时间】:2014-10-16 01:44:35
【问题描述】:

根据https://cloud.google.com/appengine/docs/python/googlecloudstorageclient/activate

默认存储桶名称通常是 .appspot.com,您可以在其中 替换为您的应用 ID。您可以在 App Engine 管理控制台应用程序设置页面,在标签下 谷歌云存储桶。或者,您可以使用应用程序 标识 get_default_gcs_bucket_name() 方法查找名称 以编程方式。

当我查看 Google Cloud Storage Bucket 标签时,我看到了<app-id>.appspot.com,其中<app-id> 是我的应用程序的标识符。这似乎与上一段中的前两句话一致。

但是当我按照最后一句话的建议调用get_default_gcs_bucket_name()时,返回值为app_default_bucket

由于我将此应用程序部署到多个站点,因此我想使用方法调用。有没有办法让它返回真正的默认存储桶名称?

【问题讨论】:

  • 您是在 SDK 中测试还是部署?
  • @Greg SDK。我还没有尝试部署。顺便说一句,由于您的问题表明您对此有一些经验,如果您也看看stackoverflow.com/questions/26406633/…,我将不胜感激
  • 我在使用开发服务器的 GCS 插件时遇到了问题。尝试部署它,看看你会得到什么。
  • @Greg @Bruyere 我尝试部署但得到“没有名为 cloudstorage 的模块”(参见上面提到的线程)。所以我注释掉了杀手导入语句及其依赖项,好消息,get_default_gcs_bucket_name() 工作正常。这解决了这个线程。谢谢!

标签: google-app-engine google-cloud-storage


【解决方案1】:

大多数服务在开发环境中被替换为存根。将应用部署到 GAE 后,get_default_gcs_bucket_name 将返回 <app_id>.appspot.com

我使用以下应用验证了该行为:

import webapp2

from google.appengine.api import app_identity


class MainPage(webapp2.RequestHandler):
    def get(self):
        self.response.headers['Content-Type'] = 'text/plain'
        self.response.write(app_identity.get_default_gcs_bucket_name())

application = webapp2.WSGIApplication([
    ('/', MainPage),
], debug=True)

【讨论】:

    【解决方案2】:

    您可以将客户端库与开发服务器一起使用。但是,由于没有本地模拟 Cloud Storage,所有读取和写入文件的请求都必须通过 Internet 发送到实际的 Cloud Storage 存储桶。

    将客户端库与开发应用服务器一起使用:

    激活 Cloud Storage 存储分区。

    使用标志 --default_gcs_bucket_name [BUCKET_NAME] 运行 dev_appserver.py,将 [BUCKET_NAME] 替换为您正在使用的 Cloud Storage 存储分区的名称。

    此标志控制应用程序调用 file.DefaultBucketName(ctx) 时将返回的存储桶。

    在谷歌文档中找到了这个 - https://cloud.google.com/appengine/docs/standard/python/googlecloudstorageclient/setting-up-cloud-storage#activating_a_cloud_storage_bucket

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-18
      • 2016-01-01
      • 2019-12-22
      • 2020-09-17
      • 2022-09-28
      • 2018-10-12
      • 2020-12-04
      • 2021-02-21
      相关资源
      最近更新 更多