如何通过扩展设置全局 MIME 类型?

Ray*_*oss 2 content-type mime-types google-cloud-storage

有没有办法为整个存储桶指定带有扩展名的所有文件应该是什么 mime 类型?

这在 Apache 上托管文件时非常容易,并且当浏览器希望我们的字幕为text/vtt. 我每隔几个月将文件上传到存储桶一次,我将在许多计算机上使用 Rubber Ducky、web gui、gcs fuse 或 gsutil 中的任何东西。编写一个应用程序只是为了上传具有正确 mime 类型的文件,这似乎是一件非常麻烦的事情。

有一种方法可以设置全局默认 ACL,当然必须有一种方法可以设置全局默认 VTT mime。

更新

在 boto 配置文件的 GSUtil 部分设置 use_magicfile=True 使 mime 检测更准确,稍微缓解了这个问题 https://github.com/GoogleCloudPlatform/gsutil/issues/183#issuecomment-35741417

Mik*_*rtz 5

无法在 GCS 中的存储桶上配置基于扩展的 MIME 类型。您需要更改上传文件的代码以在上传时设置 MIME 类型。

如果您只想根据扩展名修复一堆对象上的 MIME 类型,您可以使用 gsutil 命令来实现,例如:

 gsutil -m setmeta -h "Content-Type:text/vtt" gs://your-bucket/**.txt
Run Code Online (Sandbox Code Playgroud)