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);
浙公网安备 33010602011771号