是否可以在Firebase / Google Cloud Storage存储桶上设置文件夹或存储桶级别的“ cacheControl”设置?

问题描述

除了可以为每个上传文件(例如图像)设置存储桶之外,我还可以通过某种方式配置存储桶,以便为cacheControl标头设置文件夹级别或存储桶级别的规则吗? / p>

> myBucket     // SOMETHING LIKE: myBucket.Metadada = { "cacheControl: "public,max-age=31536000"}
  > folder1    // OR MAYBE: myBucket.folder1.Metadada = { "cacheControl: "public,max-age=31536000"}
    image1.jpg  // INSTEAD OF SETTING IT FOR EVERY IMAGE FILE
    image2.jpg
  > folder2
    image3.jpg
    image4.jpg

还是仅按文件配置?

解决方法

到目前为止,Cloud Storage不支持设置规则。虽然。您可以编辑存储桶或文件夹中所有对象的元数据,例如使用Cache-Control编辑gsutil setmeta command

要编辑存储桶中所有现有对象的元数据,可以将存储桶定义为目标:

gsutil setmeta -r -h "Cache-control:public,max-age=300" gs://bucket_name

根据您的情况,您可以将所有文件上传到存储桶或文件夹中,然后使用上述命令将Cache-Control设置为所有必需的对象。

Source