2016-05-09 92 views
4

我得到的错误: 试图生成一个春天假死客户端时,“方法有太多的身体参数” 我可以使用Multipart参数生成Spring Feign客户端吗?

@RequestMapping(value="/media", method=RequestMethod.POST) 
String uploadMedia(@RequestHeader("Authentication") String token, 
    @RequestPart("media") MultipartFile audio, 
    @RequestPart("a-json-object") SomeClass someClazz, 
    @RequestPart("another-json-object") AnotherClass anotherClazz); 

我发现下面的解决方案,使用常规的假死注释的时候,而不是与工作Spring MVC的注解:

'Too many body parameters' Exception on Feign Client

+0

现在不行,不行。 – spencergibb

回答

1

它现在应该是可能的。添加下面的依赖关系:

<dependencies> 
... 
<dependency> 
    <groupId>io.github.openfeign.form</groupId> 
    <artifactId>feign-form</artifactId> 
    <version>2.2.0</version> 
</dependency> 
<dependency> 
    <groupId>io.github.openfeign.form</groupId> 
    <artifactId>feign-form-spring</artifactId> 
    <version>2.2.0</version> 
</dependency> 
... 

,并使用此客户端配置:

@FeignClient(name = "file-upload-service", configuration = FileUploadServiceClient.MultipartSupportConfig.class) 
public interface FileUploadServiceClient extends IFileUploadServiceClient { 

    @Configuration 
    public class MultipartSupportConfig { 

     @Bean 
     @Primary 
     @Scope("prototype") 
     public Encoder feignFormEncoder() { 
      return new SpringFormEncoder(); 
     } 
    } 
} 

例子是摘自:feign-form docs

相关问题