1.临时文件转base64
uni.getFileSystemManager().readFile({
filePath:e.detail.avatarUrl,
encoding:'base64',
success:r => {
console.log(r.data,'base64');
}
})
2.base64转本地文件路径
const fileName = 'test.jpg'; // 指定文件名
const filePath =`${wx.env.USER_DATA_PATH}/${fileName}`; // 拼接文件路径
uni.getFileSystemManager().writeFile({
filePath,
data: r.data,//上面的base64
encoding: 'base64',
success() {
console.log('写入文件成功', filePath);//http://usr/test.jpg
}
})
3.上传文件
uni.uploadFile({
url: 'xxx', // 替换成你的上传接口地址
filePath, // 传入本地文件路径
name: 'file', // 服务器接收的文件字段名
success(uploadFileRes) {
let data = JSON.parse(uploadFileRes.data)
console.log(data,'uploadFileRes');
},
fail(err) {
console.error('上传失败', err);
}
});
4.整体
uni.getFileSystemManager().readFile({
filePath:e.detail.avatarUrl,
encoding:'base64',
success:r => {
console.log(r.data,'base64');
const fileName = 'test.jpg'; // 指定文件名
const filePath =`${wx.env.USER_DATA_PATH}/${fileName}`; // 拼接文件路径
uni.getFileSystemManager().writeFile({
filePath,
data: r.data,//上面的base64
encoding: 'base64',
success() {
console.log('写入文件成功', filePath);//http://usr/test.jpg
uni.uploadFile({
url: 'xxx', // 替换成你的上传接口地址
filePath, // 传入本地文件路径
name: 'file', // 服务器接收的文件字段名
success(uploadFileRes) {
let data = JSON.parse(uploadFileRes.data)
console.log(data,'uploadFileRes');
},
fail(err) {
console.error('上传失败', err);
}
});
}
})
}
})