评论

为什么无法监听下载进度?怎么解决?

解决无法监听下载进度问题

解决方案:在responseHeader中加入 Content-Length 返回即可。

问题分析:

一般的静态文件放在OSS或者服务器上请求的时候服务器响应头都会有个Content-Length 文件大小(单位:b)返回。

如果响应头没有返回这个字段,将无法计算进度。也就有了为啥 res.progress返回的是null 、一直是0、根本不会进入onProgressUpdate事件等问题

微信小程序:“你不告诉我文件有多大我怎么给你计算进度?”

写了个可以复现的代码片段https://developers.weixin.qq.com/s/7yUmn7mI7OvX

最后一次编辑于  2021-11-27  
点赞 0
收藏
评论

2 个评论

  • 王哪儿跑
    王哪儿跑
    2022-04-22

    从阿里oss下载,已经下载的数据长度totalBytesWritten有返回,但是值不准确,文件已经下载完成了,totalBytesWritten的值还不到文件总大小的一半,又遇到这种问题吗

    2022-04-22
    赞同
    回复 1
  • 张有釜
    张有釜
    2021-11-30

    这种情况是服务端动态返回文件的时候发生的吗

    2021-11-30
    赞同
    回复 2
    • Listen
      Listen
      2021-11-30
      2021-11-30
      回复
    • 张有釜
      张有釜
      2021-12-01回复Listen
      没有bug 也要创造bug!
      2021-12-01
      回复
登录 后发表内容