hbuilder如何上传多张图片?

发布于 2022-09-11 19:54:33 字数 1186 浏览 20 评论 0

这是发送请求的代码:

//提交
let task = window.plus.uploader.createUpload(`${apiConfig.config.baseURL}complaint/insertComplaint`,{
    method: 'POST',
    headers: {
        "Content-Type": "multipart/form-data"
    }
},(data, status)=>{
    console.log(data);
    let res = (new Function("return " + data.responseText))();
    //上传完成
    if(res.code == 200){
        console.log('提交成功');
        console.log(res);
    }
    else{
        this.$toast(res.data.msg);
    }
})
task.setRequestHeader('token', localStorage.token);    
//多图上传
for(let i=0;i<this.images.length;i++){
    //this.images是图片路径数组,为['1.jpg','2.jpg','3.jpg']
    task.addFile(this.images[i],{ key: 'multipartFiles' }); 
}
task.addData("byUserUid",this.userId); //投诉人
task.addData("toUserUid",this.accused); //被投诉人
task.addData("reason",this.chinese_reason);  //原因(传中文)
task.addData("content",this.msg);  //内容
task.addData("severeStatus",this.value_reason);  //投诉级别(传id)
task.addData("orderUid",this.value_order);  //投诉订单
task.start(); //开始上传

后端的接口文档是这样的:

clipboard.png

可是无论如何,后端那边只能收到第一张图片,是我用法有问题吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

罪歌 2022-09-18 19:54:33

图片描述你可以试试每次单张上传然后轮询一下。
应该是你这个key重复了吧 ,你换一个随机数试一下。

for(let i=0;i<this.images.length;i++){
    //this.images是图片路径数组,为['1.jpg','2.jpg','3.jpg']
    task.addFile(this.images[i],{ key: ~~Math.random()*10}); 
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文