前言:作者用的mac系统(这个是个坑),前端用的uniapp,调用若依通用上传方法报错NoSuchFileException: /home/ruoyi/uploadPath/upload...
前端上传代码示例如下:
uni.chooseImage({
count: 1,
success(res){
uni.uploadFile({
url: "http://127.0.0.1:8080/common/upload",
filePath: res.tempFilePaths[0],
name: 'file', // 这里根据后端接口的字段来定义
success: uploadFileRes => {
console.log("uploadFileRes", uploadFileRes);
// 处理上传成功的结果
},
fail: uploadFileError => {
console.log("uploadFileError", uploadFileError);
// 处理上传失败的错误
}
})
}
})
跟踪若依上传文件代码,发现是upload方法的 file.transferTo(Paths.get(absPath)) 这里报错找不到文件,由于作者是mac系统,配置文件application.yml里配置的文件上传路径是/home/ruoyi/uploadPath,将home前面的/去掉变成相对路径即可,如下所示:
如果服务器是linux系统打包时记得将“ / ”加上去,T_T