通过Rest API从Google云端硬盘进行部分下载耗时太长

时间:2019-02-05 07:42:28

标签: c# http google-api google-drive-api postman

我正在尝试从Google云端硬盘下载文件并显示进度。

根据official documentation,从Google云端硬盘下载文件的请求接受了Range标头,但没有太大区别。我正在尝试下载~40 MB文件,无论我是否下载100 B65 KiB20 MiB的块,每个请求将始终需要大约30秒才能完成,两者在iOS和Postman上。要求以~300 ms结尾的较小文件,因此访问API本身不是问题。

我与邮递员发送的请求是

GET /drive/v3/files/<file id>?alt=media HTTP/1.1
Host: www.googleapis.com
Range: bytes=0-100
Cache-Control: no-cache
Authorization: Bearer <My Token>
Postman-Token: ef19a353-98fe-4e7b-a892-a5a1a178d8a6

(来自我们应用程序的请求应该非常相似。)我认为它应该迅速返回,但事实并非如此。与下载整个(~40 MB)文件所需的时间差不多。

我还有其他方法可以接收部分下载内容吗?我可以以合理的方式报告进度吗?每个块在整个下载过程中花费的时间相同,从而使范围标头变得毫无用处。

0 个答案:

没有答案