【问题标题】:How to parse YAML response body to POJO in Retrofit library?如何在 Retrofit 库中将 YAML 响应正文解析为 POJO?
【发布时间】:2021-12-19 15:04:35
【问题描述】:

我在 Retrofit 中处理 YAML 格式的响应时遇到问题。到目前为止,我只处理 JSON 格式或纯文本的响应正文。对于这些类型,我总是为 JSON 准备 gson、jackson 和纯文本标量等转换器。我找到了所有转换器的存储库:retrofit-convertes。 在文档中简短地提到我需要为这种类型创建自己的转换器。

如果您需要与使用 Retrofit 开箱即用不支持的内容格式(例如 YAML、txt、自定义格式)的 API 进行通信,或者您希望使用不同的库来实现现有格式,您可以轻松创建自己的转换器。创建一个扩展 Converter.Factory 类的类,并在构建适配器时传入一个实例。

遗憾的是,我没有看到任何有关如何创建此类转换器的教程。是否有任何文档说明如何执行此操作,或者是否有任何其他选项可以处理此类情况?

【问题讨论】:

    标签: android kotlin yaml retrofit


    【解决方案1】:

    在您的情况下,您可以将 Jackon 与 yaml 数据格式一起使用。

    Retrofit retrofit = new Retrofit.Builder()
    .baseUrl("<your base url>")
    .addConverterFactory(JacksonConverterFactory.create(new ObjectMapper(new YAMLFactory())))
    .build();
    

    有关更多信息,请查看以下链接:

    https://github.com/square/retrofit/tree/master/retrofit-converters/jackson

    https://github.com/FasterXML/jackson-dataformats-text/tree/master/yaml

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-05
      • 2016-06-20
      相关资源
      最近更新 更多