我试图让 Apache HttpClient 触发 HTTP 请求,然后显示 HTTP 响应代码(200、404、500 等)以及 HTTP 响应正文(文本字符串)。重要的是要注意我正在使用v4.2.2
,因为大多数 HttpClient 示例都来自v.3.x.x
并且 API 从版本 3 到版本 4 发生了很大变化。
不幸的是,我只能让 HttpClient 返回状态代码或响应正文(但不能同时返回两者)。
这是我所拥有的:
// Getting the status code.
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://whatever.blah.com");
HttpResponse resp = client.execute(httpGet);
int statusCode = resp.getStatusLine().getStatusCode();
// Getting the response body.
HttpClient client = new DefaultHttpClient();
HttpGet httpGet = new HttpGet("http://whatever.blah.com");
ResponseHandler<String> handler = new BasicResponseHandler();
String body = client.execute(httpGet, handler);
所以我问:使用v4.2.2
库,如何从同一个client.execute(...)
调用中获取状态码和响应体?提前致谢!