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()

30
फिर आप HTTP स्थिति कोड डेवलपर.
android.com/reference/org/apache/http/HttpStatus.html

2
चूंकि HttpStatus एक पदावनत वर्ग है, इसलिए इसका उपयोग करने के लिए एक बेहतर वर्ग है?
गहर

@ आकाशवाणी - हां, बस HttpUrlConnection विधि का उपयोग करें: .getResponseCode ()
निकिता कर्टिन

1
@NikitaKurtin सुनिश्चित करता है कि एक पूर्णांक लौटाता है लेकिन आपको कैसे पता चलेगा कि वास्तविक प्रतिक्रिया कोड की Http प्रतिक्रिया स्थिति क्या है? अगर आप इसके सफल होंगे तो आपको कैसे पता चलेगा? मैं कहना नहीं चाहता if(getResponseCode()==200)। मैं बल्कि कहूंगा if(getResponseCode()==HttpStatus.RESPONSE_OK)या ऐसा कुछ।
Ga8787

3
@ आकाशमणि, हां, इसके लिए कक्षा के अंदर इंट कॉन्स्टेंट हैं। उदाहरण के लिए HttpURLConnection.HTTP_OK (200 -> http ठीक स्थिति) HttpURLConnection.HTTP_NOT_FOUND (404 -> नहीं मिला), आदि .. उपलब्ध कॉन्स्टेंट की पूरी सूची आप इसे कक्षा संदर्भ में देख सकते हैं: developer.android.com/reference/java/ net /…
निकिता कुर्तिन

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.