web-dev-qa-db-fra.com

Obtenez le code HTTP à partir de org.Apache.http.HttpResponse

J'utilise la classe org.Apache.http.HttpResponse Dans mon Java, et je dois pouvoir obtenir le code d'état HTTP. Si j'ai utilisé .toString() sur , je peux voir le code d'état HTTP ici. Y a-t-il une autre fonction que je peux simplement obtenir le code d'état HTTP en tant qu'int ou chaîne?

Merci beaucoup!

73
Chiggins

Utilisez HttpResponse.getStatusLine() , qui renvoie un objet StatusLine contenant le code d'état, la version du protocole et la "raison".

128
matt b

J'ai utilisé httpResponse.getStatusLine().getStatusCode() et l'ai trouvé pour retourner de manière fiable le code d'état http entier.

64
user1735872
httpResponse.getStatusLine().getStatusCode()
30
bentobox

Un exemple sera comme ci-dessous,

        final String enhancementPayload ="sunil kumar";
        HttpPost submitFormReq = new HttpPost("https://bgl-ast/rest/service/form/form-data");
        StringEntity enhancementJson = new StringEntity(enhancementPayload);
        submitFormReq.setEntity(enhancementJson);
        submitFormReq.setHeader("Content-Type", "application/xml");

        HttpResponse response = httpClient.execute( submitFormReq );
        String result = EntityUtils.toString(response.getEntity());
        System.out.println("result "+result);
        assertEquals(200, response.getStatusLine().getStatusCode());
2
Linus