好程序员Java教程分享使用HttpClient抓取页面内容,使用HttpClient工具来发送Http请求
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了乌海海南免费建站欢迎大家使用!1.简介
HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。HttpClient 已经应用在很多的项目中,比如 Apache Jakarta 上很著名的另外两个开源项目 Cactus 和 HTMLUnit 都使用了 HttpClient。
HttpClient 相比传统 JDK 自带的 URLConnection,增加了易用性和灵活性,它不仅是客户端发送 HTTP 请求变得容易,而且也方便了开发人员测试接口(基于 HTTP 协议的),即提高了开发的效率,也方便提高代码的健壮性。因此熟练掌握 HttpClient 是很重要的必修内容,掌握 HttpClient 后,相信对于 HTTP 协议的了解会更加深入。
2.应用场景
点击并拖拽以移动
3.HttpClient工具的使用
1)添加依赖
2)编写测试代码@Test
br/>@Test
//1.获得HttpClient对象
CloseableHttpClient client = HttpClients.
createDefault
();
//2.创建请求对象,如果是post请求 HttpPost 如果是get请求 HttpGet对象
String uri = "http://www.baidu.com";
HttpGet get = new HttpGet(uri);
//3.执行get请求,获得响应消息对象
CloseableHttpResponse response = client.execute(get);
//4.获取响应行
StatusLine statusLine = response.getStatusLine();
//5.获取状态码
int code = statusLine.getStatusCode();
if(code==200){
//响应成功
HttpEntity entity = response.getEntity();
//6.获取响应体中的内容
// InputStream is = entity.getContent();
// byte[] b = new byte[8192];
// int len = 0;
// while((len = is.read(b))!=-1){
// System.out.println(new String(b,0,len));
// }
// is.close();
System.
out
.println(EntityUtils.
toString
(entity, "utf-8"));
}
}
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。