私はネットワークコールのためにAndroidクライアントにokhttpを実装しました。okhttp get failure response
エラー応答を取得すると、エラーコードとメッセージに関連するテキストがメッセージとして表示されますが、サーバーが送信するカスタムエラー応答は表示されません。 実装されたコードの私の失敗の応答で私が得るメッセージはちょうど "悪い要求"です。
サーバーから返されたエラーメッセージはどうすればわかりますか?
私のコードは
private void executeCall(Request request, final ResponseListener listener) {
mOKHttpClient.newCall(request)
.enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
postFailure(listener, (String) call.request()
.tag(),e.toString());
}
@Override
public void onResponse(Call call, final Response response) throws IOException {
if(response.isSuccessful()) {
String responseString = response.body().string();
postSuccess(listener, (String)call.request().tag(), responseString);
}
else {
postFailure(listener, (String)call.request().tag(),response.code()+","+response.message());
}
}
});
}
リクエストがサーバーに失敗したときには可能かもしれない失敗を送信コード400となっているため、あなたには悪い要求が表示されています。したがって、失敗応答でもステータス200とメッセージを設定する必要があります。サーバからの応答を受け取ります。 – Vickyexpert