HttpClient 图解说明

来源:互联网 发布:倒放的视频软件 编辑:程序博客网 时间:2024/06/01 19:52

大家刚看这个名字一定会想问这是什么东东,在这我特意百度百科了下

HTTP 协议可能是现在 Internet 上使用得最多、最重要的协议了,越来越多的 Java 应用程序需要直接通过 HTTP 协议来访问网络资源。虽然在 JDK 的 java net包中已经提供了访问 HTTP 协议的基本功能,但是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活。HttpClient是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。HttpClient 已经应用在很多的项目中,比如 Apache Jakarta 上很著名的另外两个开源项目 Cactus 和 HTMLUnit 都使用了 HttpClient。现在HttpClient最新版本为 HttpClient 4.4 (GA)

 

 

 

我的理解了主要是模拟浏览器发送请求给服务器,监听响应信息,判断返回结果的正确性如何,由于避开的浏览器的UI ,也就将浏览器中所有加载的时间(比如经常要加载图片啊)都省掉了,所以这个执行效率相当高

 

现在我们直接进入实战

首先新建一个工程,在百度搜HttpClient 4.4 下载相关的Jar 文件

注意4.3 和4.4 创建请求方式不一样了





我是从这里下载的,不过要积分哦

http://download.csdn.net/detail/y515789/8470829

解压之后有如下文件





将此文件复制到工 程的lib 目录下之后导入


在SRC 目录下新建一个包


再新建一个类




这里先计解如何用模拟Get 发送请求

先贴原代 码



第一步要实例化对象

CloseableHttpClientHttpClient=HttpClient.createdefault();

第二步,指定网址URL

HttpGet(“URL”)

 

第三步设置 信息头,有时要,有时不要,这个看实际情况调试

一般不设这些东西用默认值也可以

Htpget.setHeader(“表头名称”,值)

 

第四步执行请求,提取返回信息

 CloseableHttpResponse httpReponse=httpclient.execute(httpget);

第五步

检查响应信息,有时可以用检查响应代码,有时需要用检查报文信息才行

  long status=httpReponse.getStatusLine().getStatusCode();


你我的例子中

我用检查响应代码中是否存在200的代码,如果存在200代码说明返回值正常


if (status==200) {
            System.out.println("响应成功");
        }
        else {
            System.out.println("响应失败");
      
        }



String result=EntityUtils.toString(httpReponse.getEntity());
        System.out.println(result);








另一种检查方式

检查响应信息的文本,与期望值相比对,确认是否正常

     String result=EntityUtils.toString(httpReponse.getEntity());
        System.out.println(result);


这里你可以用参数的方式,比如你在调用Get 方法时传一个待验证的字符串,在这执行之后验证返回值进行比对





POST  请求其实操作流程和Get 请求相同,只是Get  请求可以一次传送一个完整的URL 而POST 需要用参数对将值放到请求内容中

区别在这



这里是将每一个参数与所传的值一一对应传到接口中

完整的代码示例如下


执行之后





0 0
原创粉丝点击