HttpClient 图解说明

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

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
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值