【问题标题】:How to set metadata如何设置元数据
【发布时间】:2019-11-10 10:18:13
【问题描述】:

我对 Google Cloud Bucket 有疑问。当我在 Google Cloud 调用我的文件时,它们带有标题 privatemax-age=0,因此没有缓存选项。

我使用控制台设置元数据选项。我输入:

gsutil -m setmeta -r "Cache-Control:public, max-age=3600" gs://bucket/folder*

但它不起作用。我该怎么办?这对我来说是个可怕的问题。

【问题讨论】:

  • 您如何称呼您的文件?你能粘贴你的基本网址吗?您可以执行 gsutil ls -L 并粘贴结果吗?
  • 值得注意的是,我必须用 \ 转义我的通配符才能让命令从 zshell 为我工作

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


【解决方案1】:

gsutil 命令是link

gsutil setmeta -h [header:value|header] ... url...

以下命令对我有用:

gsutil -m setmeta -h "Cache-Control:public, max-age=3600" gs://destination/object

-h 从每个命名对象中指定要添加的标头:值或要删除的标头。

您可以在命令中使用通配符,例如所有对象:

gsutil -m setmeta -h "Cache-Control:public, max-age=3600"  gs://YOUR_BUCKET/**/*

元数据仅适用于对象,我认为您不能将规则应用于存储桶以应用于未来的对象。

【讨论】:

  • 感谢您的回复。这适用于每个对象。我对每个对象使用此命令来做到这一点,但我想为整个存储桶级别设置它,并确保为将来的文件设置它。你知道有什么方法吗?
  • 如答案中所述,无法在存储桶级别进行设置。但是,您可以创建一个云函数,以便在将对象上传到您的存储桶后设置所需的元数据。 This post 告诉你如何
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-11-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-05
相关资源
最近更新 更多