HttpClient 是一个客户端的 HTTP 传输库,而不是浏览器。HttpClient 的目的是传输和接收 HTTP 报文。HttpClient 不会尝试去处理报文内容,执行嵌入 HTML 内的 JavaScript 脚本,或者是猜测实体内容类型等于 HTTP 传输无关的操作。
HttpClient 使用的示例
// 创建 HttpClient 实例
CloseableHttpClient httpClient = HttpClients.createDefault();
// 创建一个 HTTP GET 请求的实例
HttpGet httpGet = new HttpGet("http://www.example.com/");
// 发送请求并获取 HTTP 响应
CloseableHttpResponse response = httpClient.execute(httpGet); try {
// 打印响应报文的起始行
System.out.println(response.getStatusLine()); // 打印响应报文的首部
Header[] headers = response.getAllHeaders();
for (Header header : headers) {
System.out.println(header.getName() + ": " + header.getValue());
}
System.out.println(""); // 打印报文的主体
HttpEntity entity = response.getEntity();
if (entity != null) {
System.out.println(EntityUtils.toString(entity));
}
} finally {
response.close();
}