Contents

Apache HTTPClient 获取状态代码

1. 概述

在这个非常快速的教程中,我将展示如何使用 HttpClient 获取和验证 HTTP 响应的 StatusCode

2. 从 Http 响应中获取状态码

发送 Http 请求后——我们得到了一个org.apache.http.HttpResponse的实例——它允许我们访问响应的状态行,并隐式地访问状态代码:

response.getStatusLine().getStatusCode()

使用它,我们可以验证我们从服务器接收到的代码确实是正确的

@Test
public void givenGetRequestExecuted_whenAnalyzingTheResponse_thenCorrectStatusCode() 
  throws ClientProtocolException, IOException {
    HttpClient client = HttpClientBuilder.create().build();    
    HttpResponse response = client.execute(new HttpGet(SAMPLE_URL));
    int statusCode = response.getStatusLine().getStatusCode();
    assertThat(statusCode, equalTo(HttpStatus.SC_OK));
}

请注意,我们正在使用通过org.apache.http.HttpStatus在库中也可用的预定义状态代码