我遇到了一個需要爲第三方API定義一次性@FeignClient的場景。在這個客戶端中,我想使用與我的@Primary不同的自定義Jackson ObjectMapper。我知道可以重寫Spring的假裝配置默認值,但是我不清楚如何僅僅通過這個特定的客戶端來覆蓋ObjectMapper。如何使用Spring雲Netflix Feign設置自定義Jackson ObjectMapper
3
A
回答
8
根據documentation,您可以爲您的Feign客戶端提供自定義解碼器,如下所示。
假死客戶端接口:
@FeignClient(value = "foo", configuration = FooClientConfig.class)
public interface FooClient{
//Your mappings
}
假死客戶定製配置:
@Configuration
public class FooClientConfig {
@Bean
public Decoder feignDecoder() {
HttpMessageConverter jacksonConverter = new MappingJackson2HttpMessageConverter(customObjectMapper());
ObjectFactory<HttpMessageConverters> objectFactory =() -> new HttpMessageConverters(jacksonConverter);
return new ResponseEntityDecoder(new SpringDecoder(objectFactory));
}
public ObjectMapper customObjectMapper(){
ObjectMapper objectMapper = new ObjectMapper();
//Customize as much as you want
return objectMapper;
}
}
+0
簡單地用'return new JacksonDecoder(customObjectMapper());'' – leveluptor
相關問題
- 1. 如何在Feign-Client中設置HostnameVerifier從spring-cloud-netflix-feign
- 2. 如何使用Spring application.properties定製Jackson ObjectMapper?
- 3. 如何使用spring雲將HystrixProperty設置爲Feign請求?
- 4. 如何使用jackson ObjectMapper將POJO映射到自定義地圖?
- 5. 使用Netflix Feign和Hystrix設置請求超時
- 6. 如何將jackson objectmapper dateformat配置添加到spring mvc配置中?
- 7. 如何獲取Spring 4.1使用的Jackson ObjectMapper?
- 8. Weblogic上的Netflix OSS/Spring雲
- 9. 使用Jackson ObjectMapper和Jersey
- 10. 是否可以在spring-data-mongodb中注入一個自定義的Jackson ObjectMapper?
- 11. netflix feign POST請求問題
- 12. Jackson - 將自定義PrettyPrinter與自定義JsonSerializer一起使用
- 13. Spring netflix eureka,zuul vs Spring雲數據流
- 14. 自定義Jackson ObjectMapper讀取自定義註釋和掩碼字段註釋
- 15. Spring 3.2和Jackson 2:添加自定義對象映射器
- 16. Jackson/JSON:ExceptionInInitializerError調用新的ObjectMapper()
- 17. 配置Spring的雲Netflix公司(Brixton.RELEASE)的EurekaInstanceConfigBean用於AWS
- 18. 使用Jackson的ObjectMapper時的重複值
- 19. 如何使用AutoMapper註冊自定義ObjectMapper
- 20. 使用Spring雲Netflix負載均衡微服務OSS
- 21. RestTemplate&Jackson - 自定義JSON反序列化?
- 22. 使用jackson ObjectMapper時保留的堆大小更多ObjectMapper
- 23. 春季雲Netflix和HystrixObservable - > JsonMappingException
- 24. 如何將Jackson ObjectMapper與Guice/Jersey掛鉤
- 25. Spring在數據綁定期間忽略自定義ObjectMapper
- 26. 春天雲Feign OAuth2RestTemplate
- 27. 庫中的自定義Jackson序列化
- 28. Feign客戶端自定義oauth2響應
- 29. Reuse Jackson ObjectMapper和JsonFactory實例
- 30. Jackson ObjectMapper大/小寫問題
你有沒有嘗試過了,它不工作? Spring Cloud Feign使用與Spring MVC使用的相同的'HttpMessageConverters'對象。將其配置爲普通的Spring Boot方式應該「正常工作」(以爲我自己並沒有嘗試過)。 http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-customize-the-jackson-objectmapper – spencergibb
@spencergibb我可以覆蓋ObjectMapper,並且它被所有Spring正確使用MVC控制器和所有Feign客戶端。然而,我需要的是一個特殊的假客戶端,使用默認配置的不同對象映射器。我不知道如何開始做這項工作。 – Newbie
您必須使用之前發佈的doc鏈接創建一個'SpringDecoder' bean,並在那裏混淆它。 – spencergibb