我使用的是spring-webflux WebClient(建20170502.221452-172)访问生产进入对象(应用程序/流+ JSON)这样的流的Web应用程序:如何自定义SpringWebFlux WebClient JSON反序列化?
final WebClient producerClient = WebClient.create("http://localhost:8080/");
Flux<Entry> entries = producerClient.get().uri("json-stream")
.accept(MediaType.APPLICATION_STREAM_JSON)
.exchange()
.flatMapMany(clientResponse -> clientResponse.bodyToFlux(Entry.class));
虽然的反序列化条目对象使用标准通用类型(包括Java时间(JSR-310)数据类型,如java.time.Instant)正常工作,我不知道为了向Java反序列化添加任何自定义JSON(例如,自定义Jackson ObjectMapper)。
我找不到WebClient中的任何API或者其构建器和流利API生成的对象的类中。
有人使用WebClient进行自定义反序列化吗?
(也许API是不存在的,没有?)
你能告诉为什么不应用到默认编码解码器Jackson2ObjectMapperBuilderCustomizer的原因是什么? – hahn
这听起来像是一个新问题 - 你可以创建一个吗? –
接口已经改变了一点,现在你调用了ExchangeStrategies.builder()。codecs(config - > {config.defaultCodecs()。jackson2Encoder ... etc – f1dave