【问题标题】:Firebase Storage remove custom metadata keyFirebase 存储删除自定义元数据键
【发布时间】:2020-08-25 22:46:20
【问题描述】:

我无法从 Firebase 存储中的文件中删除自定义元数据键。

这是我迄今为止尝试过的:

blob = bucket.get_blob("dir/file")
metadata = blob.metadata
metadata.pop('custom_key', None) # or del metadata['custom_key']
blob.metadata = metadata
blob.patch()

我也尝试将其值设置为None,但没有帮助。

【问题讨论】:

    标签: python-3.x google-cloud-storage firebase-storage


    【解决方案1】:

    似乎有一些原因可能会影响您删除自定义元数据。我会逐一讲,这样更容易理解。

    首先,当您使用blob.metadata 读取元数据时,它似乎只以只读形式返回——正如here 所阐明的那样。因此,使用您尝试的方式,您的更新将无法按照您的意愿工作。第二个原因,似乎将元数据再次保存回blob,其顺序与您尝试的顺序不同 - 如here所示。

    您可以使用以下代码尝试一下:

    blob = bucket.get_blob("dir/file")
    metadata = blob.metadata
    metadata.pop{'custom_key': None} 
    blob.patch()
    blob.metadata = metadata
    

    虽然此代码未经测试,但我相信它可能会帮助您更改订单并避免blob.metadata 只读情况。

    如果这对您没有帮助,我建议您在官方Github repository 中针对 Cloud Storage 上的 Python 库提出问题,以便开发人员进一步澄清。

    【讨论】:

      猜你喜欢
      • 2017-01-08
      • 2021-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-09
      • 2018-07-09
      • 2018-06-11
      • 2017-07-27
      相关资源
      最近更新 更多