springboot 1.5.1
公司項目升級springboot由1.5.1升級到2.1.2.RELEASE,cloud版本也升級到G版本。突然發現文件上傳失效。。。之前解決掉的問題又再次出現
問題收集如下:
1.Feign library does not support Multipart requests
2. The current request is not a multipart request
3. the request was rejected because no multipart boundary was found
如果使用的是sprignboot 2.0、cloud F版本以下,則可以通過
feign文件上傳 解決
springboot 2.1.2
升級G版本後,
消費方需要刪除掉原來引用的,因爲該版本已經適配了feign-form和feign-form-spring,無需再次引入
<dependency>
<groupId>io.github.openfeign.form</groupId>
<artifactId>feign-form</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>io.github.openfeign.form</groupId>
<artifactId>feign-form-spring</artifactId>
<version>3.3.0</version>
</dependency>
消費方增加配置文件:
<dependency>
<groupId>io.github.openfeign.form</groupId>
<artifactId>feign-form</artifactId>
<version>3.3.0</version>
</dependency>
<dependency>
<groupId>io.github.openfeign.form</groupId>
<artifactId>feign-form-spring</artifactId>
<version>3.3.0</version>
</dependency>
服務提供方:
使用@RequestPart接收參數,還需定義consumes
@RequestMapping(value = "/upload", method = RequestMethod.POST, consumes = MediaType.MULTIPART_FORM_DATA_VALUE) public Result<List<FileBO>> upload(@RequestPart("file") MultipartFile [] multipartFiles ) throws IOException;