前言:作者用的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