1

Androidには、WebサービスでGETを実行するHttpClientがあります。Webサービスは、いくつかのデータを含むエラーのJSON詳細オブジェクト(たとえば、リクエストを再送信できる将来の時間)を含むHttpエラー429(リクエストが多すぎる)を返すことができます。

残念ながら

response = httpclient.execute(httpGet, localContext);

NoHttpResponseExceptionを発生させると、応答オブジェクトはNULLのままになります。

したがって、その特定の429エラーを管理するためのチャンチはありません。

解決策はありますか?

更新: サーバーがHTTPステータスコード= 429の正しいJSONオブジェクトを返す場合、httpclient.execute(httpGet、localContext);をフィドラーで確認しました。NoHttpResponseExceptionをスローするだけです。つまり、サーバーが結果を返さないという問題はありません。

4

1 に答える 1

1

このようなことを意味しますか?

WebRequestResult result = new WebRequestResult();
URL url = new URL(this.url);
URLConnection connection = url.openConnection();
HttpURLConnection  httpConnection = (HttpURLConnection) connection;
//This here?
result.setStatusCode(httpConnection.getResponseCode());
result.setStatusDescription(httpConnection.getResponseMessage());
于 2012-10-10T10:31:01.717 に答える