HttpClient 是Apache Jakarta Common 下的子项目,能够用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,而且它支持 HTTP 协议最新的版本和建议。html
HTTP 协议多是如今 Internet 上使用得最多、最重要的协议了,愈来愈多的 Java 应用程序须要直接经过 HTTP 协议来访问网络资源。虽然在 JDK 的 java net包中已经提供了访问 HTTP 协议的基本功能,可是对于大部分应用程序来讲,JDK 库自己提供的功能还不够丰富和灵活。HttpClient 是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,而且它支持 HTTP 协议最新的版本和建议。HttpClient 已经应用在不少的项目中,好比 Apache Jakarta 上很著名的另外两个开源项目 Cactus 和 HTMLUnit 都使用了 HttpClient。如今HttpClient最新版本为 HttpClient 4.5 .6(2015-09-11)java
<!--添加httpClient jar包 --> <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> </dependency>
public class TestHttpClient { /** * 1.实例化httpClient对象 * 2.肯定请求url地址 * 3.定义请求方式类型 get post put delete * 4.利用api发起http请求,获取响应结果 * 5.判断返回值是否正确 校验状态码. * 6.若是返回值状态码正确的(200),则动态获取返回值信息 */ @Test public void test() { HttpClient httpClient = HttpClients.createDefault(); String url = "https://www.baidu.com"; HttpGet httpGet = new HttpGet(url); try { //发起请求,获取响应 200 HttpResponse httpResponse = httpClient.execute(httpGet); int code = httpResponse.getStatusLine().getStatusCode(); String reason = httpResponse.getStatusLine().getReasonPhrase(); System.out.println("获取返回值信息:"+code+":"+reason); if(code==200) { //表示用户的请求正确 获取响应的实体 HttpEntity httpEntity = httpResponse.getEntity(); //将实体信息.转化为String类型,进行展示,防止乱码 String result = EntityUtils.toString(httpEntity,"utf-8"); System.out.println(result); } } catch (IOException e) { e.printStackTrace(); } } }
若有冒犯,请评论区,通知,我将及时撤回!!!apache