uni.app的uni.chooseImage图片上传的时候在h5跟小程序的一个差异。
upload() {
const token = uni.getStorageSync(‘token’);
uni.chooseImage({
count: 1, // 最多上传几张图片,默认9张
sizeType: [‘compressed’], // 所选图片尺寸,compressed 压缩图
sourceType: [‘album’], // 选择图片的来源,相册中的还是相机拍摄, ‘camera’
success: (res) => {
const imgFiles = res.tempFilePaths[0]; // 图片的本地文件路径列表
uni.uploadFile({
url: ‘url’,
header: {
‘content-type’: ‘multipart/form-data’,
Authorization: Bearer ${token},
},
fileType: ‘image’,
filePath: imgFiles,
name: ‘file’,
success: (uploadFileRes) => {
console.log(JSON.parse(uploadFileRes.data));
}
});
}
});
},
以上的header设置在h5会报错,后面查了资料才知道:
如果是在h5,header里去掉’content-type’: ‘multipart/form-data’
若是在小程序中,header里加上’content-type’: ‘multipart/form-data’,就可以了