【问题标题】:Setting "default" metadata for all+new objects in a GCS bucket?为 GCS 存储桶中的所有+新对象设置“默认”元数据?
【发布时间】:2020-04-27 14:06:27
【问题描述】:

我在 Google Cloud Storage 上运行一个静态网站(博客)。

我需要为所有现有和未来对象的cache-control 标头设置默认metadata 标头。

但是,editing object metadata 指令显示了 gsutil setmeta -h "cache-control: ..." 命令,它似乎既不适用于存储桶中的“未来”对象,也没有给我一种设置 可以继承到现有/未来对象的存储桶范围策略(因为执行了命令per-object)。

这让我很惊讶,因为有像 gsutil defacl 这样的功能让您可以为将来创建的对象继承的存储桶设置策略。

问:是否有适用于所有现有和未来对象的整个存储桶的元数据策略?

【问题讨论】:

    标签: google-cloud-storage


    【解决方案1】:

    无法在 GCS 对象上设置默认元数据。您必须在写入时设置元数据,或者您可以稍后更新它(例如,使用 gsutil setmeta)。

    【讨论】:

      【解决方案2】:

      摘自此question

      根据documentation,如果对象没有Cache-Control 条目,则在为该对象提供服务时的默认值将是public,max-age=3600(如果该对象是公开可读的)。

      如果您仍想修改此元数据,您可以使用 Cloud Funtion 中的 JSON API 来执行此操作,每次创建新对象或覆盖现有对象时,这将是 triggered .

      【讨论】:

      • 不幸的是,这无济于事(或者,它有助于意识到缺少功能)。看起来我们无法自定义未来对象的默认元数据值。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-05-10
      • 1970-01-01
      • 2021-11-27
      • 2016-01-01
      • 2013-10-11
      • 1970-01-01
      • 2020-01-26
      相关资源
      最近更新 更多