【发布时间】:2020-02-29 20:17:19
【问题描述】:
因此,Google 存储有这个用于可恢复上传的强大 API:https://cloud.google.com/storage/docs/json_api/v1/how-tos/resumable-upload,我想利用它来上传多个块中的大型对象。然而,这是在流处理管道中完成的,其中流中的字节总数是事先不知道的。
根据 API 的文档,您应该使用 Content-Range 标头告诉 Google Storage API 您已完成文件上传,例如:
PUT https://www.googleapis.com/upload/storage/v1/b/myBucket/o?uploadType=resumable&upload_id=xa298sd_sdlkj2 HTTP/1.1
Content-Length: 1024
Content-Range: bytes 1023-2048/2048
[BYTES 1023-2048]
如果我理解这是如何正常工作的,那么 Content-Range 标头的 bytes 1023-2048/2048 值就是 Google 存储如何确定您正在上传最后一块数据,并且它可以在完成后成功完成可恢复的上传会话完毕。
但在我的情况下,总流大小事先不知道,所以我需要继续上传,直到没有更多数据要上传。有没有办法使用 Google Storage API 做到这一点?理想情况下,我希望通过某种方式手动告诉 API“嘿,我已经完成了,不要指望我提供更多数据”。
【问题讨论】:
标签: google-cloud-platform google-cloud-storage