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
니키타 Kurtin

1
@NikitaKurtin은 정수를 반환하지만 실제 응답 코드의 Http 응답 상태가 무엇인지 어떻게 알 수 있습니까? 성공 여부를 어떻게 알 수 있습니까? 나는 말하고 싶지 않다 if(getResponseCode()==200). 차라리 그렇게 말하고 싶습니다 if(getResponseCode()==HttpStatus.RESPONSE_OK).
gaara87

3
@AkashRamani, 예, 클래스 내부에 int 상수가 있습니다. 예를 들어 HttpURLConnection.HTTP_OK (200-> http ok 상태) HttpURLConnection.HTTP_NOT_FOUND (404-> 찾을 수 없음) 등. 클래스 참조에서 찾을 수있는 사용 가능한 상수의 전체 목록 : developer.android.com/reference/java/ net /…
Nikita Kurtin 2015 년

9
if (response.getStatusLine().getStatusCode()== HttpsURLConnection.HTTP_OK){
...
}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.