文档
测试

图像上传

POST
user/qiniu/wxappuploader

接口描述

这个接口是上传七牛云【云端接口】

请求参数

参数名
类型
描述
必填
filePath
srting
要上传文件资源的路径: 单个路径
必填
name
string
file
必填
formData
可选

小程序代码【已测试】

//上传图片开始 chooseImg: function (e) { var goodsindex = e.currentTarget.dataset.goodsindex; var that = this; var dt = this.data.order_data; var imgs = dt.orderdetail[goodsindex]['imgs']; if (imgs.length >= 5) { this.setData({ lenMore: 1 }); setTimeout(function () { that.setData({ lenMore: 0 }); }, 2500); return false; } wx.chooseImage({ count: 5, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 success: function (res) { console.log('第一步') // 返回选定照片的本地文件路径列表,tempFilePath可以作为img标签的src属性显示图片 var tempFilePaths = res.tempFilePaths; var dt = that.data.order_data; var imgs = dt.orderdetail[goodsindex]['imgs']; for (var i = 0; i < tempFilePaths.length; i++) { if (imgs.length >= 5) { that.setData({ order_data:dt }); return false; } else { imgs.push(tempFilePaths[i]); } } that.setData({ order_data: dt }); console.log('第二步'); /*******************/ var successUp = 0; //成功个数 var failUp = 0; //失败个数 var length = res.tempFilePaths.length; //总共个数 var i = 0; //第几个 that.uploadDIY(res.tempFilePaths, successUp, failUp, i, length); /*******************/ } }); }, /* 函数描述:作为上传文件时递归上传的函数体体; * 参数描述: * filePaths是文件路径数组 * successUp是成功上传的个数 * failUp是上传失败的个数 * i是文件路径数组的指标 * length是文件路径数组的长度 */ uploadDIY(filePaths, successUp, failUp, i, length) { var that = this; wx.showLoading({ title: '图片上传中...', }) api.uploadFile({ url: 'user/qiniu/wxappuploader', filePath: filePaths[i], name: 'file', formData: { 'user': 'test' }, success: (res) => { if (res.code == 1) { successUp++; // 成功 console.log('*********返回的数据自己保存在数据里头start******'); console.log(res); console.log('*********返回的数据自己保存在数据里头end******'); } if (res.code == 0) { // 失败 that.setData({ isuploaderror: 1 }); failUp++; } }, fail: (res) => { that.setData({ isuploaderror: 1 }); failUp++; }, complete: () => { i++; if (i == length) { wx.hideToast(); var txt = '总共' + successUp + '张上传成功,' + failUp + '张上传失败!'; wx.showToast({ title: txt, icon: 'success', duration: 2000 }) } else { //递归调用uploadDIY函数 if (that.data.isuploaderror) { wx.showToast({ title: '图片上传失败,请重新选择上传', icon: 'success', duration: 2000 }) } else { this.uploadDIY(filePaths, successUp, failUp, i, length); } } } }); },

返回数据

![image.png](https://easydoc-1255322048.image.myqcloud.com//cover/15yf3crxxlds00000.png)