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

HTTP 协议可能是如今 Internet 上使用得最多、最重要的协议了,越来越多的 Java 应用程序须要直接通过 HTTP 协议来訪问网络资源。

尽管在 JDK 的 java net包中已经提供了訪问 HTTP 协议的基本功能。可是对于大部分应用程序来说,JDK 库本身提供的功能还不够丰富和灵活。

HttpClient是 Apache Jakarta Common 下的子项目,用来提供高效的、最新的、功能丰富的支持 HTTP 协议的client编程工具包,而且它支持 HTTP 协议最新的版本号和建议。

HttpClient
已经应用在非常多的项目中,比方 Apache Jakarta 上非常著名的另外两个开源项目 Cactus 和 HTMLUnit 都使用了 HttpClient。如今HttpClient最新版本号为 HttpClient 4.4 (GA)

我的理解了主要是模拟浏览器发送请求给server,监听响应信息,推断返回结果的正确性怎样,因为避开的浏览器的UI ,也就将浏览器中全部载入的时间(比方常常要载入图片啊)都省掉了,所以这个运行效率相当高

如今我们直接进入实战

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

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

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

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

解压之后有例如以下文件

将此文件拷贝到工 程的lib 文件夹下之后导入

在SRC 文件夹下新建一个包

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" height="651" width="645">

再新建一个类

这里先计解怎样用模拟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 须要用參数对将值放到请求内容中

差别在这

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

完整的代码示比例如以下

运行之后

SOAPUI 安装+破解图讲解明

http://blog.chinaunix.net/uid-28995070-id-5156198.html

 SOAPUI 怎样导入项目文件

http://blog.chinaunix.net/uid-28995070-id-5156204.html



SOAPUI 项目新建--天气预报

http://blog.chinaunix.net/uid-28995070-id-5156232.html



SOAPUI 測试套件新建

http://blog.chinaunix.net/uid-28995070-id-5156246.html

HttpClient 图讲解明的更多相关文章

  1. vs2010公布时去除msvcp100.dll和msvcr100.dll图讲解明

    近期开发个程序,Copy到虚拟机环境中測试时提示缺少msvcr100.dll,于是想到编译时设置选项去除依赖. 什么是 msvcr100.dll MS = Microsoft V = Visual C ...

  2. 一张图讲解对象锁和关键字synchronized修饰方法

    每个对象在出生的时候就有一把钥匙(监视器),那么被synchronized 修饰的方法相当于给方法加了一个锁,这个方法就可以进行同步,在多线程的时候,不会出现线程安全问题. 下面通过一张图片进行讲解: ...

  3. 弱电系统标准CAD图例识图讲解

    弱电系统标准CAD图例识图讲解 http://www.360doc.com/content/17/0317/16/33642774_637680009.shtml

  4. 一张图讲解最少机器搭建FastDFS高可用分布式集群安装说明

     很幸运参与零售云快消平台的公有云搭建及孵化项目.零售云快消平台源于零售云家电3C平台私有项目,是与公司业务强耦合的.为了适用于全场景全品类平台,集团要求项目平台化,我们抢先并承担了此任务.并由我来主 ...

  5. 设计模式课程 设计模式精讲 2-2 UML类图讲解

    1 类图讲解 1 类图讲解 + 公共方法 - private权限 # protected权限 包内和包外继承的子类都能引用 ~ default权限(包权限)只有包内能引用 下划线   静态 Stati ...

  6. JVM学习03_new对象的内存图讲解,以及引出static方法(转)

    目录 -=-讲解对象创建过程中,-=-堆内存和栈内存的情况 -=-构造函数对类对象的成员变量的初始化过程 -=-构造函数出栈 -=-类的方法在不访问类对象的成员变量时造成的内存资源浪费怎么解决? -= ...

  7. 用动图讲解分布式 Raft

    一.Raft 概述 Raft 算法是分布式系统开发首选的共识算法.比如现在流行 Etcd.Consul. 如果掌握了这个算法,就可以较容易地处理绝大部分场景的容错和一致性需求.比如分布式配置系统.分布 ...

  8. 一张图讲解为什么需要自己搭建自己的git服务以及搭建的途径

    图片信息量有点大.不废话上图 图中的一些链接: gitlab官方安装文档 https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/in ...

  9. dp入门 石子相邻合并 详细带图讲解

    题目: 有N堆石子,现要将石子有序的合并成一堆,规定如下: 1.每次只能移动相邻的2堆石子合并  2.合并花费为新合成的一堆石子的数量. 求将这N堆石子合并成一堆的总花费最小(或最大). 样例: 输入 ...

随机推荐

  1. 新手须知 QT类大全

    QT类大全,在行内容中罗列出来了,希望大家多看看,如果是API就更好了,但可惜不是.这些是一些大类,请多做参考. QApplication 应用程序类 QLabel 标签类 QPushButton 按 ...

  2. google浏览器安装接口测试工具postman方法

    Google安装postman: 未配好的文件下载(点击选择下面配好的直接用):下载 配置方法: 一:需要修改postman安装包中js/requester.js 和runner.js ,将其中的ai ...

  3. sql删除注意的问题

    老大骂你都是有原因的,基础要打好!!!! SQL关于删除的三个语句:DROP.TRUNCATE. DELETE 的区别. DROP test; 删除表test,并释放空间,将test表删除的一干二净 ...

  4. java中的hachcode方法

    哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率.在Java的Object类中有一个方法: public native int hashCode(); 根据这个 ...

  5. dubbo 部分 配置的关系-dubbo github 官方案例

    1.dubbo 有一个 dubbo.properties 作为默认配置 默认配置可以在不添加新的配置的前提下使用dubbo dubbo.properties 的内容(来自 https://github ...

  6. ASP.NET-Session与复杂数据类型

    原文链接:http://www.cnblogs.com/fish-li/archive/2013/05/28/3104750.html Session与复杂数据类型 Session有三种工作模式,拿A ...

  7. HDU 4316 Contest 2

    三个摄像头,在XOY上与立体的点求出在平面上的交点,然后求出凸包.三个凸包相交的面积即是所求,即是可以用半平面交的方法求解了. 模板题了.代码拿别人的. #include<cmath> # ...

  8. IntelliJ IDEA 初始化项目时No Java SDK Found

    IntelliJ IDEA 初始化项目时No Java SDK Found 自己在Project SDK后面的New按钮进行JDK的添加:

  9. iOS-UIImage imageWithContentsOfFile 和 imageName 对照

    1.imageWithContentsOfFile NSString *imagePath = [NSString stringWithFormat:@"%@/%@",[[NSBu ...

  10. POJ-1785-Binary Search Heap Construction(笛卡尔树)

    Description Read the statement of problem G for the definitions concerning trees. In the following w ...