如何在Retrofit 2 android中处理自定义响应代码

时间:2017-12-14 14:31:56

标签: android retrofit2

我有一个Backend服务,它会返回如下成功响应:

{
    "status":"success",
    "response_code":600,
    "result": {
        "id":103,
        "name":"Khalid",
        "email":"kha.taha92@gmail.com"
    }
}

并返回失败响应,如下所示:

{
    "status":"fail",
    "response_code":605,
    "result": "Something went wrong"
}

两个回复都是200(成功) 我需要的是将605作为错误处理而不是成功响应。

1 个答案:

答案 0 :(得分:1)

onResponse中,只测试代码结果。

@Override
public void onResponse(Call<YourModel> call, Response<YourModel> response) {
    if (response.code() == 600) {
       // Do success stuff
    } else if (response.code() == 605){
       // Handle error response 
    }
}