@PostMapping("/upload")
public Result upload(@RequestParam(value = "file") MultipartFile file, //这样接收文件
@RequestParam(required = false) Map params,
HttpServletRequest request){
Result result = new Result();
File file2 = null;
String fileName = file.getOriginalFilename();
String prefix = fileName.substring(fileName.lastIndexOf("."));
List
@PostMapping("/receive")
public Result<String> receive(HttpSession session, @RequestParam("file") MultipartFile file){
// 判断上传的文件是否为空
if (file.isEmpty()) {
// 是:抛出异常
throw new FileEmptyException("上传的文件不允许为空");
}
//保存文件
//获取当前项目的绝对路径
// String parent = session.getServletContext().getRealPath("upload");
String parent = "E:\\123\\upload";
File dir = new File(parent);
if(!dir.exists()){
dir.mkdir();
}
//获取当前文件的后缀名
String originalFilename = file.getOriginalFilename();
int beginIndex = originalFilename.lastIndexOf(".");
String suffix = "";
//后缀
if(beginIndex>0){
suffix = originalFilename.substring(beginIndex);
}
//使用uuid 随机前缀文件名
String prefix = UUID.randomUUID().toString();
//全图片名
String filename = prefix + suffix;
//创建文件对象,表示保存文件的头像文件
File dest = new File(dir,filename);
try {
file.transferTo(dest);
} catch (IOException e) {
throw new FileUploadIOException("上传文件读写错误,请重试");
} catch (IllegalStateException e){
throw new FileStateException("文件状态异常");
}
//将文件路径上传到数据库
// String avatar = "/file/" + filename;
// Integer uid = getUidFromSession(session);
// crossDomainService.uploadAvatarInMysql(uid,avatar);
return new Result<String>(SUCCESS);//,avatar
}
500,是对方的服务器出现内部错误,检查下提交的数据是否合法,如果合法就是对方服务器代码问题了。