首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用mediatype "application/x-ndjson“配置spring-5”webclient (with jetty Connector)“webflux

如何使用mediatype "application/x-ndjson“配置spring-5”webclient (with jetty Connector)“webflux
EN

Stack Overflow用户
提问于 2020-05-20 00:12:34
回答 1查看 617关注 0票数 1

我正在尝试访问rest端点,它将返回带有mediatype "application/x-ndjson“头的响应。如何在Spring5 Webclient中使用这个端点?如果我在Spring5 WebClient中将媒体类型设置为“应用程序/流+json”,它会起作用吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-20 18:26:36

你应该能够用你想支持的所有媒体类型创建你自己的Jackson2JsonDecoder (包括这个特定的媒体类型)。

类似于:

代码语言:javascript
复制
Jackson2JsonDecoder jsonDecoder = new Jackson2JsonDecoder(Jackson2ObjectMapperBuilder.json().build(), 
    new MimeType("application", "json"), new MimeType("application", "x-ndjson"));

然后在构建时直接在WebClient中配置此解码器:

代码语言:javascript
复制
WebClient webClient = WebClient.builder().codecs(codecs -> codecs.defaultCodecs().jackson2JsonDecoder(jsonDecoder)).build();

如果你使用的是Spring Boot,你可以通过:

代码语言:javascript
复制
@Configuration
public class JsonConfiguration {

  @Bean
  public CodecCustomizer ndJsonCustomizer(ObjectMapper objectMapper) {
    Jackson2JsonDecoder jsonDecoder = new Jackson2JsonDecoder(objectMapper, 
        new MimeType("application", "json"), new MimeType("application", "x-ndjson"));
    return codecs -> codecs.defaultCodecs().jackson2JsonDecoder(jsonDecoder);
  }

}

将来,您可能不需要这样做,因为Spring Framework团队是considering ndjson support out-of-the-box to replace stream+json

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61895751

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档