javascript - 如何在前端获取一个文件的加载进度

 手机用户2502858341 发布于 2022-11-15 07:21

求助求助,我想在前端获取一个json文件的加载进度,如何获取呢?
原本用xhr.loaded可以,但服务器开了gzip后,就获取不了了

4 个回答
  • 可以用ajax论询另一个请求地址, 由服务端返回读取的字节数 / 总字节数

    2022-11-15 08:42 回答
  • ajax除了上传文件可以得到进度外, 其他普通的数据都得不到进度

    2022-11-15 08:42 回答
  • 这是之前在知乎看到的答案链接描述

    2022-11-15 08:42 回答
  • 一般是这样做的:

    if (event.lengthComputable) {
          var percentComplete = event.loaded / event.total;
        }

    但启用GZIP后,你会找不到 Content-length的值,就没法通过普通方法获取进度了。
    response中也会看到:Transfer-Encoding:chunked 该编码将实体分块传送并逐块标明长度,直到长度为0块表示传输结束。

    2022-11-15 08:42 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有