繁体   English   中英

在翻新中处理Json和XML响应-Android使用addConverterFactory

[英]Handling both Json and XML response in Retrofit - Android using addConverterFactory

我期望在我的应用程序中同时响应json和xml。 Retrofit 2.0允许您为这种情况添加多个转换器工厂。

但是,这里的顺序似乎至关重要。 在SimpleXmlConverterFactory上方添加JacksonConverterFactory可使Retrofit仅接受Json响应,并在遇到XML时引发异常,反之亦然。

以下是如何将多个addConverterFactory添加到Retrofit Builder的代码片段。

.addConverterFactory(JacksonConverterFactory.create(objectMapper))
                .addConverterFactory(SimpleXmlConverterFactory.create())

<<<编辑

将上面的代码更改为此,但仍然无法正常工作:

return new Retrofit.Builder()
                .client(clientBuilder.build())
                .baseUrl(BuildConfig.API_ENDPOINT)
                .addCallAdapterFactory(unAuthorizedHandlingCallAdapterFactory)
                .addCallAdapterFactory(RxErrorHandlingCallAdapterFactory.create())
                .addConverterFactory(new QualifiedTypeConverterFactory(JacksonConverterFactory.create(objectMapper), SimpleXmlConverterFactory.create()))
                .build();

EDIT2

添加响应类型是@GET (“ /”)@ Xml键

您可以将多个Converter Factory合并到一个Converter Factory ,从改造样本中查看此示例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM