改造如何处理两种类型的响应?

时间:2015-06-30 04:44:22

标签: android retrofit

我有一个Android应用程序的API服务器。

我正在尝试使用Retrofit。

api服务器可以返回正常状态,比如/users

{
    "userId":"123",
    "username":"John Doe"
}

但它也可能会返回错误。

{
    "errorCode":0,
    "errorMessage":"blah"
}

所以我只是想知道,有没有办法在Retrofit中为每个方法全局处理错误?

编辑:

我最终修改了服务器输出。

{
    data:[],
    error:{}
}

1 个答案:

答案 0 :(得分:1)

使用JsonObject制作api方法,如下所示

 Call<JsonObject> listRes(@Body GsonRegisterUser user);

现在使用

Call<JsonObject> call = listenerRegisterUser.listRes(gsonRegisterUser);

现在您将通过使用以下方法获得json响应,并且您可以根据您的要求进行解析

@Override
    public void onResponse(Response<JsonObject> response) {
            Log.e(TAG,response.body().toString());
    }