小编Mar*_*tin的帖子

如何自定义SpringWebFlux WebClient JSON反序列化?

我正在使用spring-webflux WebClient (build 20170502.221452-172)来访问一个Web应用程序,生成一个Entry对象流(application/stream + 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));
Run Code Online (Sandbox Code Playgroud)

虽然Entry对象的反序列化适用于使用标准公共类型的POJO,包括Java时间(JSR-310)数据类型,如java.time.Instant,但我想知道为了将任何自定义JSON添加到Java反序列化,我必须做什么(例如,自定义Jackson ObjectMapper).

我无法在WebClient或其构建器和流畅API生成的对象的类中找到任何API 来执行此操作.

有没有人使用WebClient进行自定义反序列化?

(也许API不存在,但是?)

java spring json reactive-programming spring-webflux

16
推荐指数
6
解决办法
8251
查看次数