const task = plus.uploader.createUpload(
`${FS_URL}/api/v1/chunkupload`,
{
method: "POST",
blocksize: 1024 * 1 * 100,
chunkSize: 1024 * 1 * 100,
priority: 100,
},
({ responseText }, status) => {
if (status === 200) {
const result = JSON.parse(responseText);
if (result.error_code !== 0 || result.result.biz_code !== 0) {
reject(result);
return;
}
resolve(result.result.data);
} else {
reject();
}
}
);
task.addFile(url, {
key: "DDqyXpJO",
name: "file",
});
task.addData("idref", "MpDm7bhddib8pbFt");
task.start();
- 发布:2020-07-09 11:36
- 更新:2022-10-10 15:50
- 阅读:1981
产品分类: HTML5+
HBuilderX版本号: 2.7.14
手机系统: Android
手机系统版本号: Android 9.0
手机厂商: 小米
手机机型: 米6
打包方式: 云端
示例代码:
操作步骤:
按照代码示例编写上传
按照代码示例编写上传
预期结果:
向服务器询问是否支持断点续传
向服务器询问是否支持断点续传
实际结果:
直接上传了文件,没有查询是否支持断点续传
服务单抓到传输内容如下:
Headers:
Accept-Encoding: gzip
Connection: Keep-Alive
Content-Type: multipart/form-data; boundary=------Vw8Yz2
Host: f.router.com
Transfer-Encoding: chunked
User-Agent: Dalvik/2.1.0 (Linux; U; Android 9; MI 6 MIUI/20.6.18)
Charset: UTF-8
QueryStrings:
Forms:
idref: MpDm7bhddib8pbFt
Files:
file: Size: 191212, ContentType: image/jpeg, ContentDisposition: form-data; name="DDqyXpJO"; filename="file"
直接上传了文件,没有查询是否支持断点续传
服务单抓到传输内容如下:
Headers:
Accept-Encoding: gzip
Connection: Keep-Alive
Content-Type: multipart/form-data; boundary=------Vw8Yz2
Host: f.router.com
Transfer-Encoding: chunked
User-Agent: Dalvik/2.1.0 (Linux; U; Android 9; MI 6 MIUI/20.6.18)
Charset: UTF-8
QueryStrings:
Forms:
idref: MpDm7bhddib8pbFt
Files:
file: Size: 191212, ContentType: image/jpeg, ContentDisposition: form-data; name="DDqyXpJO"; filename="file"
bug描述:
在uniapp环境下面,使用plus.uploader.createUpload,并设置了blocksize和chunkSize,文件没有按照文件上传数据传输协议先查询服务器是否支持断点续传,而是直接将整个文件上传到接口。
2 个回复
FullStack - 【插件开发】【专治疑难杂症】【ios上架、马甲包、白包、过审、已成功上架过几百个】【多款插件已上架:https://ext.dcloud.net.cn/publisher?id=22130】【非诚勿扰】QQ:543610866
大文件切片、分块、分段、分片,数据可用于分块上传(ios、android):https://ext.dcloud.net.cn/plugin?id=3319
即时通讯开发
这个问题有人解决吗