背景:
uniApp 开发过程中, 需要上传图片到自己的后端服务
按照官方文档上的写法, 取 tempFilePaths 获取到的是一个 blob:xxx 的文件流, 我们的后端服务不支持这样传参, 报错;
uni.chooseImage(OBJECT) | uni-app官网
步骤:
注意点:
- uni.uploadFile 的 file 参数为自己后端服务定义的参数名
- uni.uploadFile 的 filePath 为文件的实际路径
methods: {
chooseImg() {
uni.chooseImage({
success: function (res) {
console.log(res.tempFiles[0]);
uni.uploadFile({
url: 'http://xxxxx/api/dp/file/uploads',
header: {
Authorization: 'eyJhbGb1xgiUrTPqXx5nkJg7hdw',
"Content-Type": "application/x-www-form-urlencoded"
},
name: 'files',
filePath: res.tempFiles[0].path,
formData: {
dirId: 145605211059456,
appId: 1,
// files: res.tempFiles[0],
},
success: (uploadFileRes) => {
console.log(uploadFileRes.data);
},
});
}
})
},
}