Получить HTTP код из организации.апаш.http.HttpResponse


Я использую org.apache.http.HttpResponse класс в моем Java-приложении, и мне нужно иметь возможность получить код состояния HTTP. Если бы я использовал .toString() на нем я вижу код состояния HTTP там. Есть ли какая-либо другая функция, которую я могу просто получить код состояния HTTP как int или String?

спасибо!

4 62

4 ответа:

использовать HttpResponse.getStatusLine(), который возвращает StatusLine объект, содержащий код состояния, версию протокола и"причину".

я использовал httpResponse.getStatusLine().getStatusCode() и обнаружили, что это надежно возвращает целочисленный код состояния http.

httpResponse.getStatusLine().getStatusCode()

пример будет ниже

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