无法将 gcs 获取到 return 上传的 md5hash 和 crc32c object

can't get gcs to return md5hash and crc32c for uploaded object

我有一个 python 程序,它使用 google 的可恢复上传协议上传文件。上传工作正常,但是当我尝试按照 google 的建议在上传后请求文件的元数据以便将 server-generated md5hash 与我在上传期间生成的哈希进行比较时,我的 GET 请求 returns 一个 object 元数据 json 没有校验和字段的 blob。

我在 gcs 文档中找到了一个参考,表明我必须发送一些特殊的加密 headers 才能让这些 server-generated 校验和字段被 return 编辑我的元数据 GET 请求,但文档没有说明必须包含哪些 headers - 坦率地说 - 我没有使用加密,所以我不知道我应该发送什么 headers :

https://cloud.google.com/storage/docs/json_api/v1/objects/get(第 3 段)

有趣的是,google 游乐场(可从上面的 link 访问)允许我使用 oauth 从他们的 Web 界面发出 object 请求以访问我的存储桶 - 我可以得到此请求 return 带有散列字段的完整 object 元数据。但是 playground 并没有显示完整的请求集 headers 已发送(很遗憾),所以我什至不能用它来查看我应该发送的内容。

问题:在请求 object 元数据时,将校验和字段 google 变为 return 的技巧是什么?

要获取对象的资源表示(元数据),请指定路径参数 alt=json

示例:

GET https://storage.googleapis.com/storage/v1/b/bucket/o/object?alt=json

注意:这是默认情况。您确实需要处理返回的 JSON 数据以提取 md5Hash key/value.

Google 云对象资源:

https://cloud.google.com/storage/docs/json_api/v1/objects