开启httpClient之旅

下班了,明天有事周六了(不过给我没啥关系(明天加班)),走之前把昨晚学的httpClient给总结一下,由于刚开始学习,所以这次是最基础的一遍。后期会持续更新相关内容,也欢迎关注我的个人博客。主页

搜的一些简介偷笑

HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUnit都使用了HttpClient。


enennene让我回想一下昨天学习的内容,首先需要导入几个jar包,

  httpclient-4.5.jar

   httpcore-4.4.1.jar

   httpmime-4.5.jar,几个关键词如下:CloseableHttpClient(可关闭的httpclient)、HttpGet(get类型http)、CloseableHttpResponse(可关闭的响应)、HttpEntity(请求返回的实体对象)代码注释一起上。注意这里是一个爬虫的基本操作,因为httpClient之前主要是用于爬虫操作。所以用这个例子作为入门,相信可以更有成效。

  public static void main(String[] args) {
        CloseableHttpClient httpClient=HttpClients.createDefault(); // 首先创建httpClient的实例
        HttpGet httpget = new HttpGet("http://www.网址.com/"); // 然后创建httpget实例参数是网址或者ip+端口
        CloseableHttpResponse response=null;
        try {
            response = httpClient.execute(httpget);
        } catch (ClientProtocolException e) {  // http协议异常
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) { // io异常
            // TODO Auto-generated catch block
            e.printStackTrace();
        } // 执行get请求
        HttpEntity entity=response.getEntity(); // 获取返回实体
        try {
            System.out.println("网页内容:"+EntityUtils.toString(entity, "utf-8"));//利用工具类对返回的实体格式化
        } catch (ParseException e) {  // 解析异常
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) { // io异常
            // TODO Auto-generated catch block
            e.printStackTrace();
        } // 指定编码打印网页内容
        try {
            response.close();
        } catch (IOException e) {  // io异常
            // TODO Auto-generated catch block
            e.printStackTrace();
        } // 关闭流和释放系统资源

总结:上边程序可以说是一个最基础的篇目。主要分为如下几步:

1.创建httpClient实例(可关闭的HttpClient)

2.创建所需请求方式的Http(post或者get)参数是请求的套接字(ip+端口)

3.创建一个可以关闭的Http响应对象即CloseableHttpResponse对像,用于接受请求后的响应内容。

4.通过response的getEntity获取内容(这里是获取网页上的url内容)

5.通过EntityUtil工具类来格式化返回的内容。

6.关闭两个对象一个是httpClient实例另一个是response对象。

结果如下


猜你喜欢

转载自blog.csdn.net/uniqueweimeijun/article/details/81035760