Google AppEngine Blobstore:如何确保浏览器显示进度和下载的总大小?

时间:2011-03-31 20:23:14

标签: google-app-engine blobstore

当我从blobstore提供下载时,我注意到浏览器没有显示剩余的总大小和时间,下载一直持续到完成,但浏览器似乎不知道总大小是多少预期

请注意:

  • 这只发生在appspot.com的生产服务器中。在开发环境(localhost)中,事情按预期工作,浏览器显示总大小,完成百分比以及剩余的大约时间......

  • 我尝试将标题'Content-Length'设置为blob大小,没有运气。

  • 在分析下载的blob的标题时,Content-Length标头不存在(即使我在使用“send_blob”之前写了它)。标题是这样的:

HTTP / 1.0 200 OK =>
Cache-Control =>无缓存
Content-Disposition =>附件;文件名=的 “Setup.exe”
Expires => 1990年1月1日星期五00:00:00格林尼治标准时间 Content-Type =>应用/八位字节流
日期=>星期四,2011年3月31日20:19:52 GMT
服务器=>谷歌前端

有人知道如何让浏览器显示总大小,下载百分比和预计剩余时间吗?

2 个答案:

答案 0 :(得分:8)

除了主演this issue之外,你无能为力。

以下是问题:

  1. BlobInfo类没有文件大小属性。

  2. send_blob函数(参数BlobInfo)无法设置Content-Length HTTP响应标头。

  3. GAE上的Content-Length标题can't be modified by the application

答案 1 :(得分:0)

如果您将Blobstore API与Google云端存储一起使用,则可以直接使用Blob.generate_signed_url通过GCS进行投放,这会添加内容长度标题。