七牛云 php-sdk 可以获取分片上传进度么?还是只能通过 js-sdk 实现上传进度?

问题描述

上传大文件到七牛云时,前端只能通过接口 XHR 的状态来显示上传进度,很粗略,并不能反映文件的实际上传进度。

问题出现的环境背景及自己尝试过哪些方法

  • 七牛 js-sdk 上传示例分片上传可显示上传进度: http://jssdk-v2.demo.qiniu.io
  • 查看 php-sdk 源码,文件大于 4MB 时自动分片上传,但是不知如何能获取到上传进度。

你期待的结果是什么?实际看到的错误信息又是什么?

  • 能够后端返回文件上传进度给前端。
阅读 2.1k
1 个回答
新手上路,请多包涵

您好,
当前php-sdk的话,可以在 ResumeUploader的 upload() 方法中计算当前上传的总进度
array_push($this->contexts, $ret['ctx']);
$uploaded += $blockSize;
用 $uploaded / $fileSize 获取进度,

但是这样的话,是在服务端计算的,只能前端向后端请求这个数据

logo
七牛云问答
子站问答
访问
宣传栏