我在使用伪装上传图像时遇到问题。 我有多个使用Spring Cloud的服务。 我的依赖版本如下
spring boot - 1.4.3.RELEASE
spring-cloud-starter-feign - 1.1.3.RELEASE
io.github.openfeign.form - 2.2.1
io.github.openfeign.form - 2.2.1
在我的表单中,我下面有一个带有Multipartfile的字段
public class MyFrom {
private String field1;
private String field2;
private MultipartFile image;
//getters and setters
}
并将其传递给我的假客户
@RequestMapping(value = { "/api/some-task},
method = RequestMethod.POST,
consumes = {"multipart/form-data"})
ResponseEntity addPromoTask(@RequestBody MyForm request);
我已经在代码中添加了SpringFormEncoder,但是我已经检查了编码器的代码,但当RequestBody中包含Multipartfile时,它似乎不支持。
@FeignClient(value = "some-feign",
fallback = SomeTaskClient.SomeTaskClienttFallback.class,
configuration = SomeTaskClient.CoreFeignConfiguration.class)
public interface SomeTaskClient extends SomeTaskApi {
@Configuration
class CoreFeignConfiguration {
@Bean
@Primary
@Scope(SCOPE_PROTOTYPE)
Encoder feignFormEncoder() {
return new SpringFormEncoder();
}
}
}
我已经看到您可以在下面的链接中传递多个@RequestPart,但是我似乎无法使其正常工作。 我收到一条错误消息,提示我正在传递多个身体参数。