【发布时间】:2020-04-24 21:25:36
【问题描述】:
我有一个 android 应用,可以将文件上传到 Firebase Storage 中的存储桶。当它这样做时,它会添加自定义元数据userId。
当我使用gsutil 使用docs 中的以下命令从我的计算机上传文件时:
gsutil -h x-goog-meta-userId:<userId> cp my_file gs://bucket/folder
它添加了元数据,但将大写 I 更改为一个小的 i。
有什么办法让元数据保持大写吗?
我有一个函数依赖于查找元数据为userId,否则它返回null,我目前的解决方法是检查userId 和userid。但是继续前进很高兴知道仅以小写字母设置元数据键是否更好。
这在从存储桶复制到存储桶时非常不方便,因为它会添加额外的自定义元数据而不是替换适当的元数据。
【问题讨论】:
-
实际上我可以通过控制台添加custom key with an uppercase,但不使用该命令。我正在对此进行更多调查
-
@Chris32 我可以从 Android 应用程序中做到这一点,似乎
gsutil可能有问题。在这里发布之前,我检查了他们的 GitHub,之前似乎有类似的问题#421,但它已在更新中修复。尽管在问题中 OP 使用的是setmeta. -
是的,过去有一个更新解决了这个问题,但现在又出现了。暂时没有更新。作为一种解决方法,如果需要自定义键区分大小写,您可以使用控制台手动添加。 Gsutil 保持值区分大小写,因此只有自定义键才需要。
-
目前,我已经涵盖了,但我认为应该在 API 之间保持一致性。我花了一些时间来调试我的问题,因为除此之外我必须选择一个
I来大写:-D
标签: google-cloud-functions google-cloud-storage firebase-storage gsutil