Android:HttpClientリクエストのステータスコードを取得する方法


90

ファイルをダウンロードしたいのですが、応答ステータスコード(HTTP /1.1 200 OK)を確認する必要があります。これは私のコードの一部です:

HttpGet httpRequest = new HttpGet(myUri);
HttpEntity httpEntity = null;
HttpClient httpclient = new DefaultHttpClient();
HttpResponse response = httpclient.execute(httpRequest);
...

応答のステータスコードを取得するにはどうすればよいですか?

回答:


211

これはint値を返します:

response.getStatusLine().getStatusCode()


2
HttpStatusは非推奨のクラスなので、使用するのに適したクラスはありますか?
gaara87

@AkashRamani-はい、HttpUrlConnectionメソッドを使用します:.getResponseCode()
Nikita Kurtin

1
@NikitaKurtinは必ず整数を返しますが、実際の応答コードのHttp Response Statusはどのようにしてわかりますか?それが成功したかどうかはどうやってわかりますか?言いたくないif(getResponseCode()==200)。私はむしろif(getResponseCode()==HttpStatus.RESPONSE_OK)そのようなことを言いたいです。
gaara87 2015

3
@AkashRamani、はい、クラスの内部にそのための定数があります。たとえば、HttpURLConnection.HTTP_OK(200-> http ok status)HttpURLConnection.HTTP_NOT_FOUND(404-> not found)などです。クラスリファレンスにある利用可能な定数の完全なリスト: developer.android.com/reference/java/ net /…
Nikita Kurtin

9
if (response.getStatusLine().getStatusCode()== HttpsURLConnection.HTTP_OK){
...
}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.