项目场景:
uni.getRecorderManager()返回的临时路径安卓端上传服务器接受不到数据
问题描述
uni.getRecorderManager()返回的临时路径安卓端上传服务器接受不到数据
原因分析:
返回的是临时路径,需要将临时路径转化成本机存储路径后在进行上传。
sendRecordToBackend(plus.io.convertLocalFileSystemURL(voicePath.value)) //转化成APP本地存储地址
const sendRecordToBackend = (tempFilePath) => {
// 这里使用uni.uploadFile或uni.request等方法将录音文件的临时路径发送到后端
// 以uni.uploadFile为例
console.log(tempFilePath)
uni.uploadFile({
url: 'http://ip:端口/api/file/upload', // 后端接收文件的接口地址
filePath: tempFilePath,
name: 'file', // 后端接收文件的字段名
success: (uploadRes) => {
console.log('上传成功', uploadRes);
// 在这里处理后端返回的数据
// 比如获取后端返回的录音文件存储路径
const audioUrl = uploadRes.data.audioUrl;
// 这里可以将录音文件的存储路径保存到本地或进行其他操作
},
fail: (err) => {
console.error('上传失败', err);
}
});
};