改进响应解析建议

时间:2015-09-11 06:30:37

标签: android json gson retrofit

我在改造模型类中解析JSON响应。

我的问题是,响应不是恒定意味着有时会出现2个参数并且有时间超过这个时间,

exp:

第一回复:

{
    "error": true,
    "data": {
        "order_id": [
            "Order Id does not exists"
        ]
    },
    "code": 500
}

第二回复:

{
    "error": false,
    "data": [
        "Order #P have sent successfully"
    ],
    "code": 200
}

所以在第一次回复中,如果订单ID不存在而不是响应中,我会将order_id作为关键字,但在第二次回复中我不会得到因为它是成功的。

***我可以通过要求后端人员更改响应来解决这个问题,但如果是以防任何其他前缀api响应,如果我得到这种结果那么我将如何处理?

1 个答案:

答案 0 :(得分:1)

对于这种情况,您应该编写自定义Deserializer并检查data是否为数组或jsonobject。

恕我直言,一般而言,使用相同的密钥来保存错误信息和非错误信息的想法很糟糕。