HTTP超文本传输协议(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。所有的WWW文件都必须遵守这个标准。(详情参考看一下百科

HTTP发送请求有GET,POST,PUT, OPTION,HEAD,DELETE,TRACE,CONNECT 8种,目前来说最常见的是GET、POST和PUT请求,其他的比较少见。

  1、GET:用于不修改数据仅向服务器获取资源(比如我们常见的访问某个网站首页,进入某个页面啊...基本都是用的GET请求方式)

  2、POST:用于向服务器端提交数据并获取服务器返回的处理结果(比如登录某个网站,注册提交等等一般都采用POST请求方式)

  GET跟POST的区别:其实GET能做的POST方式也基本都能做,看你服务器端怎么处理。硬要说两者的区别,两者的最大区别在于,GET请求把所有请求参数都放在请求路劲里(比如  http://e.dangdang.com/classification_list_page.html?category=YXJJ&dimension=sale&order=0,后面的三个参数及值:category=YXJJ&dimension=sale&order=0都在路劲里)而POST则把参数放在BODY里提交,这样做的好处主要有以下几点:

  A、GET请求参数放在路劲里 ,如果参数过多的那么会导致URL过长,而每种浏览器的URL长度都有各自的限制(比如chrome 8182字符 IE限制最长2083...)如果超过限制,那么请求就会失败,而POST的话请求BODY里没有这方面的限制;

  B、GET请求参数放在路径里任何人访问网站一眼就能看到你的参数名参数值...这样不安全,容易造成信息泄露,比如登录请求,如果用GET,把用户的密码显示在URL里,别人一眼就看到了

  3、PUT:通常用于向服务器发送请求并也可以提交数据,PUT跟POST类似。

[OK 更多HTTP请求内容请参考百科]

咱们这里接着介绍如何使用jmeter来发送HTTP请求测试HTTP协议的接口吧。详细步骤如下:

打开jmeter,右键测试计划,新建一个线程组:

右键线程组-->添加一个HTTP Sampler:

这里我们要测试的接口文档假设如下:

1.HTTP接口1:jmeter测试http  form表单参数的get请求

请求地址:http://api.nnzhp.cn/getuser
请求方式:GET
接口入参:userid(form表单参数)

返回格式:{"age": 18, "code": 200, "id": "1", "name": "小明"}

则jmeter配置如下:

OK,到此请求脚本就做好了,接下来添加一个监听器 :查看结果树,方便查看运行结果:

接下来再看另一个接口:

2.HTTP接口2 :jmeter测试http json入参的POST请求

请求地址:http://api.nnzhp.cn/getmoney

请求方式:POST

请求入参:userid(json)

返回格式:{'code':200,'userid':1,'money':1000}

jmeter中HTTP请求脚本配置如下:

运行结果如下:

再看一个接口:

3.HTTP 接口3:jmeter测试有header头信息Content-Type application/json 的http请求

请求地址:http://api.nnzhp.cn/getuser2

请求方式:POST

请求头:Content-Type: application/json

请求入参:userid

结果格式:{'code':200,id':1,'name':'小明','age':18}

jmeter请求配置如下:

写好HTTP请求后右键-->添加一个配置元件 http请求头:

填写头信息:

运行查看结果:

4.HTTP接口4:Jmeter测试带cookie的http请求:

请求地址:http://api.nnzhp.cn/setmoney2

请求方法:POST

请求参数:userid money 表单参数 【需要添加cookie-->token=token12345】

返回格式:{'code':200,'success':'成功'}

脚本配置如下:

这里需要说明一下,cookie本身是放在http请求头里传送的,所以这里jmeter添加http请求的cookie时,直接把cookie放在HTTP信息头管理器里:

查看运行结果:

5.Jmeter测试HTTP请求上传文件:

请求地址:http://api.nnzhp.cn/uploadfile

请求方法:POS

请求参数:file (文件)

返回结果:{'code':200,'success':'成功'}

jmeter 脚本配置如下:

注意,使用jmeter上传文件时,需要要选中:Use multipart/form-data for POST 或者就要在MIME类型里指定:multipart/form-data

查看运行结果:

OK,常见的HTTP请求脚本基本就这几类了。

jmeter测试HTTP请求的更多相关文章

  1. 转:应用JMeter测试solr请求

    使用JMeter测试solr请求 一.安装JMeter 在官网http://jmeter.apache.org/download_jmeter.cgi下载JMeter 直接解压JMeter安装包 Li ...

  2. jmeter测试https请求之导入证书

    jmeter测试https请求   公司最近在搞全站HTTPS改造,进一步提高网站的安全性,防止运营商劫持.那么,改造完成后,所有前后端的URL将全部为https. So ,研究下怎么用Jmeter访 ...

  3. jmeter测试https请求

    测试https请求时,需要添加证书 目录 1.下载证书 2.导入 3.执行https请求 1.下载证书 在浏览器中打开要测试的https协议的网站,以谷歌为例打开,下载证书到桌面 4.一直点击下一步 ...

  4. 使用Jmeter测试java请求

    1.性能测试过程中,有时候开发想对JAVA代码进行性能测试,Jmeter是支持对Java请求进行性能测试,但是需要自己开发.打包好要测试的代码,就能在Java请求中对该java方法进行性能测试2.本文 ...

  5. Apache JMeter 测试Http请求

    环境安装:JDK 下载:http://jmeter.apache.org/download_jmeter.cgi 启动: 简单HTTP请求测试

  6. 第二篇--Jmeter测试Java请求

    前提:需要准备eclipse作为开发工具,安装jdk,准备完毕,接下来开工喽! 1.新建Java工程BMIrisJNIJarTest,新建lib目录,将Jmeter安装目录下lib/ext包下的Apa ...

  7. jmeter(二十二)jmeter测试Java请求

    目的:对Java程序进行测试 目录 一.核心步骤 二.实例 三.JMeter Java Sampler介绍 四.自带Java Request Sampler 一.核心步骤 1.创建一个Java工程: ...

  8. jmeter测试http请求使用csv参数

    创建参数化文件 线程组添加CSV Data Set Config配置元件 为请求添加参数 重新运行查看结果 使用随机参数(JMeter有好多函数可以使用) 查看结果发现使用随机生成的数字 3

  9. jmeter的http post请求与测试Java请求

    1.jmeter 测试Java请求 1.1 建立测试类,在被测程序中添加测试类 1.2 将测试程序打包,打成不可运行的包 1.3 将打好的包,放在$JMETER_HOME/lib/exts下面,把测试 ...

随机推荐

  1. 分页(将数据库中的多条数据一页一页的显示在jsp页面中)

    一.显示数据库中的多条数据为什么要用分页 在真正的开发中,数据库中所存储的数据绝对不像我们平时所写的那样,仅仅有几条数据,而是有几十条甚至上百条,像淘宝京东的用户把都是上几十万甚至百万的.如果这时候在 ...

  2. css的颜色表示,与透明度

    今天是第一天开始写博客.主要还是想着好记性不如烂笔头.每天学点什么就记下来,也防止以后再去百度.   今天主要是一些旧知识的整理,整理中看到原来写的代码对颜色的表示有用rgb的,有用rega的,有用# ...

  3. nodejs 语法学习(持续更新)

    合并objects var o1 = { a: 1 }; var o2 = { b: 2 }; var o3 = { c: 3 }; var obj = Object.assign(o1, o2, o ...

  4. 家中路由添加静态IP映射(一)

    登录路由器配置页面,选择更多功能来添加IP和MAC地址映射关系

  5. 读书笔记 之 《阿里巴巴Java开发手册》

    一.前言 这本书主要定义了一些代码的规范以及一些注意事项.我只根据我自己的不足,摘录了一些内容,方便以后查阅. 二.读书笔记 命名 1.代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符 ...

  6. BotVS趋势交易策略-RSI

    BotVS趋势交易策略-RSI, 基于Python实现. RSI简单买卖测试, 默认 70-100卖出,0-30买入 参数 代码 import math def adjustFloat(v): ret ...

  7. PHP 字符串替换

    这是2017上半年的第一篇学习笔记,也是最后一篇,捂脸- 在前几天的工作中,关于"银行卡"页面原型如下,其中,不同银行卡的卡号只保留了最后四位数字可以显示,其他数字均用*字符隐藏了 ...

  8. 手机自带输入法emoji表情的输入,提交及显示——纯前端解决方案

    很早之前就遇到过需要前端支持用户输入并提交emoji表情的问题,一直没有尝试去解决,今天再一次狭路相逢,该来的躲不过,那就着手解决吧. 大多数emoji表情都是4字节的utf-16编码(辅助平面字符, ...

  9. Jsp/html页面删除前进行删除提示

    HTML代码 <body> <a href="javascript:if(window.confirm('是否?')){window.location.href='test ...

  10. java IO输入输出流实现文本复制