1. Обзор
В этом очень кратком руководстве я покажу, как получить и проверить код состояния HTTP-ответа с помощью HttpClient.
2. Извлечение кода состояния из Http-ответа
После отправки Http–запроса - мы получаем обратно экземпляр org.apache.hc.client5.http.impl.classic.ClosableHttpResponse – который позволяет нам напрямую получить доступ к коду состояния:
response.getCode()
Используя это, мы можем подтвердить, что код, который мы получаем с сервера, действительно правильный:
@Test
public final void givenGetRequestExecuted_whenAnalyzingTheResponse_thenCorrectStatusCode() throws IOException {
final HttpGet request = new HttpGet(SAMPLE_URL);
try (CloseableHttpClient client = HttpClientBuilder.create().build();
CloseableHttpResponse response = (CloseableHttpResponse) client
.execute(request, new CustomHttpClientResponseHandler())) {
assertThat(response.getCode(), equalTo(HttpStatus.SC_OK));
}
}
Обратите внимание, что мы используем предопределенные коды состояния, также доступные в библиотеке через org.apache.hc.core5.http.HttpStatus.
3. Заключение
Этот очень простой пример показывает, как извлекать коды состояния и работать с ними с помощью Apache HttpClient.
Оригинал статьи: https://www.baeldung.com/httpclient-status-code