谷歌云存储的响应标头

Posted

技术标签:

【中文标题】谷歌云存储的响应标头【英文标题】:response headers for google cloud storage 【发布时间】:2016-10-14 22:18:30 【问题描述】:

使用 Google Cloud Storage,我没有得到 CORS 标头来响应一个文件,但所有其他文件都包含它。

我上传了一个包含 SVG 文件的文件夹,以便从 Google Cloud Storage 提供服务。我把它们放在一个新桶里。我更改了权限,以便将所有文件提供给公众。我使用gsutil 工具将set the CORS headers with a JSON file 用于存储桶。我通过gsutil cors get gs://bucket 确认 CORS 设置成功。

每个对象/文件的响应都正确包含所需的 CORS 标头,但我上传的一个文件除外!

这个文件恰好是按字母顺序排列的,不确定这是否有帮助。我尝试删除有问题的文件,重新上传,然后使用 gsutil 重新应用 CORS 设置。没有运气!对同一文件的请求仍然缺少所需的 CORS 标头。

如何修复缺少 CORS 标头的单个文件的响应? 为什么会这样?

更新: 行为发生了变化。现在存在 CORS 标头。很长一段时间(60 分钟?)都是错误的,但现在已修复。为什么??

【问题讨论】:

【参考方案1】:

根据您的更新,听起来您的对象已被缓存。请参阅文档中有关 Cache Control and Consistency 的说明。

【讨论】:

同意!这与我使用的标头配置相一致,"maxAgeSeconds": 3600

以上是关于谷歌云存储的响应标头的主要内容,如果未能解决你的问题,请参考以下文章

Python:在谷歌云数据存储模拟器中保存数据

谷歌云存储:我如何避免边缘缓存

将 github 存储库与谷歌云存储桶同步

如何从能够搜索的谷歌云存储对象中获取视频流

谷歌云存储多部分图像上传(NodeJS)

谷歌云存储:401 未经授权的错误