kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/config/FeignMultipartConfig.java
New file @@ -0,0 +1,23 @@ package com.kidgrow.filecenter.config; import feign.form.spring.SpringFormEncoder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Primary; import org.springframework.context.annotation.Scope; //@Configuration public class FeignMultipartConfig { @Bean @Primary @Scope("prototype") public SpringFormEncoder multipartFormEncoder() { return new SpringFormEncoder(); } @Bean public feign.Logger.Level multipartLoggerLevel() { return feign.Logger.Level.FULL; } } kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/FileService.java
@@ -1,6 +1,7 @@ package com.kidgrow.filecenter.feign; import com.kidgrow.common.constant.ServiceNameConstants; import com.kidgrow.filecenter.config.FeignMultipartConfig; import com.kidgrow.filecenter.feign.fallback.FileServiceFallbackFactory; import com.kidgrow.filecenter.model.FileInfo; import org.springframework.cloud.openfeign.FeignClient; @@ -17,7 +18,7 @@ * @CreateDate: Created in 2020/2/22 14:33 <br> * @Author: <a href="4345453@kidgrow.com">liuke</a> */ @FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, fallbackFactory = FileServiceFallbackFactory.class, decode404 = true) @FeignClient(name = ServiceNameConstants.FILE_CENTER_SERVER, configuration = FeignMultipartConfig.class,fallbackFactory = FileServiceFallbackFactory.class, decode404 = true) public interface FileService { /** * 根据条件查询 @@ -30,6 +31,8 @@ * 根据条件查询 * @param file */ @PostMapping(value = "/files-upload",consumes = MediaType.MULTIPART_FORM_DATA_VALUE) FileInfo feignUpload(MultipartFile file); @PostMapping(value = "/files-upload",produces = {MediaType.APPLICATION_JSON_UTF8_VALUE},consumes = MediaType.MULTIPART_FORM_DATA_VALUE) FileInfo feignUpload(@RequestPart("file") MultipartFile file); } kidgrow-business/kidgrow-filecenter/kidgrow-filecenter-api/src/main/java/com/kidgrow/filecenter/feign/fallback/FileServiceFallbackFactory.java
@@ -7,6 +7,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestPart; import org.springframework.web.multipart.MultipartFile; /** @@ -29,7 +30,7 @@ return null; } @Override public FileInfo feignUpload(MultipartFile file) { public FileInfo feignUpload(@RequestPart("file") MultipartFile file) { return null; } };