HttpClient获取状态代码

IAm*_*aja 39 java apache-httpclient-4.x

使用Apache HttpClient 4.1.3并尝试从以下位置获取状态代码HttpGet:

HttpClient client = new DefaultHttpClient();
HttpGet response = new HttpGet("http://www.example.com");
ResponseHandler<String> handler = new BasicResponseHandler();
String body = client.execute(response, handler);
Run Code Online (Sandbox Code Playgroud)

如何从中提取状态代码(202,404等)body?或者,如果在4.1.3中有另一种方法可以做到这一点,它是什么?

此外,我假设一个完美/良好的HTTP响应是一个,HttpStatus.SC_ACCEPTED但也希望确认.提前致谢!

Enr*_*man 74

编辑:

试试:

HttpResponse httpResp = client.execute(response);
int code = httpResp.getStatusLine().getStatusCode();
Run Code Online (Sandbox Code Playgroud)

HttpStatus应为200(HttpStatus.SC_OK)

(我读得太快了!)


试试:

GetMethod getMethod = new GetMethod("http://www.example.com");
int res = client.executeMethod(getMethod);
Run Code Online (Sandbox Code Playgroud)

这应该做的伎俩!


use*_*757 5

这个怎么样?

HttpResponse response = client.execute(getRequest);

// Status Code
int statusCode = response.getStatusLine().getStatusCode();

ResponseHandler<String> responseHandler = new BasicResponseHandler();
// Response Body
String responseBody = responseHandler.handleResponse(response);
Run Code Online (Sandbox Code Playgroud)