Google 在网络不稳定的情况下,在可恢复上传中驱动无限循环
Google Drive Infinite loop in resumable upload with an UNSTABLE network
当我使用 REST API 将文件上传到 Google 驱动器时,我发现由于网络不稳定,每隔几秒 HTTP 连接就会重置(显然,Google基础设施很强大,但你可能不知道什么是共产主义,什么是防火墙,我们这些可怜的中国人不得不用不同的方式爬过去。
问题是 Google 的服务器将丢弃她收到的数据块,如果它的大小小于 250kb(这个值是我的测试估计的)。因此,如果网络在每次达到该值之前断开连接,我们只是一遍又一遍地上传相同的块。
我认为唯一的解决方案是通过第三方服务器上传,例如我们在 GAE 上的程序,它从不丢弃任何收到的数据。
顺便说一句,Google Drive 官方 PC 客户端在这种情况下无法正常工作。
Google 文档确认 256kb 为最小块大小。如果块失败,请检查响应 header 以查看收到了多少并从该点恢复。
当我使用 REST API 将文件上传到 Google 驱动器时,我发现由于网络不稳定,每隔几秒 HTTP 连接就会重置(显然,Google基础设施很强大,但你可能不知道什么是共产主义,什么是防火墙,我们这些可怜的中国人不得不用不同的方式爬过去。
问题是 Google 的服务器将丢弃她收到的数据块,如果它的大小小于 250kb(这个值是我的测试估计的)。因此,如果网络在每次达到该值之前断开连接,我们只是一遍又一遍地上传相同的块。
我认为唯一的解决方案是通过第三方服务器上传,例如我们在 GAE 上的程序,它从不丢弃任何收到的数据。
顺便说一句,Google Drive 官方 PC 客户端在这种情况下无法正常工作。
Google 文档确认 256kb 为最小块大小。如果块失败,请检查响应 header 以查看收到了多少并从该点恢复。