【问题标题】:CORS setting on google cloud bucket谷歌云存储桶上的 CORS 设置
【发布时间】:2017-08-23 20:59:36
【问题描述】:

我正在尝试在 google 存储桶上配置 CORS。我想在每次创建新存储桶时设置 CORS 配置。我想通过云存储客户端库完成这项工作,而不是使用 XML API。有办法解决吗?

【问题讨论】:

    标签: cors google-cloud-platform


    【解决方案1】:

    任何语言的Cloud Storage Client Libraries 似乎都没有提供直接设置 CORS 配置的能力。所以似乎唯一的选择是要么使用the XML API with the cors param,要么使用命令行using gsutil and a JSON config file,像这样:

    gsutil cors set cors-json-file.json gs://[my-bucket]
    

    cors-json-file.json 是这样的:

    [
      {
        "origin": ["*"],
        "responseHeader": ["Content-Type"],
        "method": ["GET"],
        "maxAgeSeconds": 3600
      }
    ]
    

    【讨论】:

    • 是的,这是一种方式。我忘了提到我想在每次创建存储桶时完成这项工作。那么有setter和getter方法吗??
    • 据我所知,任何语言的云存储客户端库都没有提供直接的方法。因此,要以编程方式(而不是使用 gsutil 从命令行),我认为唯一可用的是 XML API cloud.google.com/storage/docs/xml-api/put-bucket-cors
    • 我没有使用过通过 HTTP 请求创建 Web 服务的应用程序,因此不愿意使用 XML API。你能解释一下如何做到这一点吗??
    • 您使用 XML API 的方式只是获取您的编程语言提供的任何 HTTP 客户端库,并使用适当的 API 端点和适当的 XML 文档作为主体构造请求。当然,具体细节取决于您使用的语言。但是,如果您在这方面需要更多帮助,我认为如果您将其作为单独的问题发布(我会尝试自己回复),您会得到一些很好的回复。
    • 请注意,如果您运行 gsutil cors get gs://[bucket] 并且它显示了正确的标头,那么有时您必须等待 1 或 2 小时,让 Google Storage 传播这些更改。
    猜你喜欢
    • 2015-05-09
    • 2017-09-05
    • 1970-01-01
    • 2018-11-04
    • 2016-01-31
    • 2019-08-24
    • 1970-01-01
    • 2020-06-01
    • 1970-01-01
    相关资源
    最近更新 更多