在文件传出的接口上,使用@RequestBody接受映射参数,如下:
@PostMapping("/upload")
public String upload(@RequestBody MultipartFile file,@RequestParam("id") String id){
//do something
return Result.ok();
}
@PostMapping("/upload")
public String upload(@RequestParam("file") MultipartFile file,@RequestBody String id){
//do something
return Result.ok();
}
@PostMapping("/upload")
public String upload(@RequestBody FileDto dto){
//do something
return Result.ok();
}
以上情况都会出现:
WARN org.springframework.web.servlet.mvc.support.DefaultHandlerExceptionResolver -Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;boundary=--------------------------117954444450080952702590;charset=UTF-8' not supported]
如果此接口还要在远程调用中给别的服务使用,在interface里面也需要将@RequestBody去掉,不然会影响服务启动,file文件类型用@RequestParam即可,因为接受文件本身就是form-data类型,不需要额外再加注解