Feign传输Multipartfile文件的正确方式,Current request is not a multipart request报错解决

前言

最近公司有个需求 在前端上传 ppt/pdf 等文件到后台 经过解析转换成图片后 再  Feign 调用文件服务 上传 到服务器

 

1、FileFeignApi 的接口是这样的...

@ApiOperation(value = "上传 ")
@PostMapping("/upload")
String uploadFile(@RequestParam(required = true,name = "fileType") @ApiParam(required = true, value = "上传文件的类型") Integer fileType, @RequestParam(required = true,name = "file") MultipartFile file);

却发现老是报如下异常

org.springframework.web.multipart.MultipartException:Current request is not a multipart request.......

经过一番研究终于发现问题了,原来 文件流要用 @RequestPart 注解传参,并且 数据传输格式  content-type 为【multipart/form-data】,所以正确写法如下:

@ApiOperation(value = "上传 ")
@PostMapping(value = "/upload",consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
String uploadFile(@RequestParam(required = true,name = "fileType") @ApiParam(required = true, value = "上传文件的类型") Integer fileType, @RequestPart(required = true,name = "file") MultipartFile file);

 

posted @ 2020-12-26 14:25  我来自喵星球  阅读(963)  评论(0)    收藏  举报