使用谷歌云存储,我想通过一个客户端必要的信息做一个断点续传的上传 。 这可能吗?
Answer 1:
是的,这是可能的。
与已认证的云存储服务,它希望授予访问客户端的服务器,典型的签署网址上传工作流程是这样的:
- 客户端请求一个签名,以便它可以做一个PUT
- 您的服务器创建并返回一个签名的
URL
使用该方法在这里描述 - 客户端不与返回的PUT
URL
可恢复工作流程是这样的:
- 客户端请求一个签名,以便它可以做一个PUT
- 服务器也可以创建并返回一个签名
URL
使用方法这里描述 - 你的服务器使POST请求发起支援续传如这里所描述
- 您的服务器返回该
URL
和Upload ID
给客户端 - 客户端不使用所提供的一个或多个PUT操作
URL
和Upload ID
Answer 2:
我只是发现了本说明这里的文档 :
注意:如果您的用户只上传资源(写)到访问控制斗,你可以使用谷歌云存储的断点续传功能,避免签署网址或需要一个谷歌帐户。 在支援续传的上传情况,你的(服务器端)代码验证和启动上传到谷歌云存储,而无需实际上传任何数据。 开始请求返回上传ID,其然后可以在客户端请求用于上传的数据。 客户端请求并不需要签名,因为上传ID,实际上,作为一个认证令牌。 如果你选择了这条路,一定要通过HTTPS传输的上传ID。
所以基本上你不需要签署网址。 上传ID就足够了。 该程序将如下所示:
- 客户端请求的上传,因此它可以做一个PUT
- 你的服务器使POST请求发起支援续传。
- 您的服务器返回的上传ID给客户端。
- 客户端执行PUT使用所提供的上传ID上传的文件。
文章来源: Can I do a resumable upload with a Google Cloud Storage signed URL?