リクエストを使用してRetrofit 2でエラー応答を処理するにはどうすればよいですか?Retrofit 2でエラー応答を処理する方法は?
通常のケースではペットの配列を返し、リクエストに不正なパラメータがあるとエラーjsonオブジェクトを返すというプロセス応答が必要です。この2つの状況をどうすれば処理できますか?
thisチュートリアルを使用しようとしていますが、主な問題はノーマルとエラーjsonをオブジェクトにマッピングすることです。
マイ正常な応答例:
[ {
"type" : "cat",
"color": "black"
},
{
"type" : "cat",
"color": "white"
} ]
エラー応答例:
{"error" = "-1", error_description = "Low version"}
私が得たもの:
Call<List<Pet>> call = getApiService().getPet(1);
Response<List<Pet>> response;
List<Pet> result = null;
try {
response = call.execute(); //line with exception "Expected BEGIN_ARRAY but was BEGIN_OBJECT at line 1 column 2 path"
if(!response.isSuccessful()){
Error error = parseError(response);
Log.d("error message", error.getErrorDescription());
}
if (response.code() == 200) {
result = response.body();
}
} catch (IOException e) {
e.printStackTrace();
}
を参照するために私は主な問題は、プロセス2つのJSONオブジェクトであることが、理解しています。 –