Post请求在JMeter的Parameters【参数】和Body Data【消息体数据】的使用区别
注意:本次举例的网站登录接口是不限制Content-Type,所以可以application/x-www-from-urlencoded或application/json。
- 在JMeter使用Parameters【参数】时,Content-Type默认为application/x-www-from-urlencoded,可以不传;
Parameters【参数】的数据以键值对的形式发送请求,具体表现为键=值,以”&“分割参数,如:键1=值1&键2=值2&键3=值3
按照下图依次说明:
- HTTP请求 设置Parameters【参数】为键值对的数据形式
- 观察结果树 查看到请求的Request Body的POST data 确实是以键值对(键1=值1&键2=值2&键3=值3)的数据形式发送请求
- 观察结果树 查看到请求的Request Headers 的content-type确实是默认的content-type:application/x-www-from-urlencoded
- 观察结果树 查看到响应数据的Response Body 显示请求有正确的响应
- 在JMeter使用Body Data【消息体数据】时,若输入参数是json数据格式,Content-Type只能传application/json;
按照下图依次说明:
- HTTP信息头管理器 设置header的content-type:application/json
- HTTP请求 设置Body Data【消息体数据】为json数据格式
- 观察结果树 查看到请求的Request Body的POST data 确实是以json形式发送请求
- 观察结果树 查看到请求的Request Headers 的content-type确实是在HTTP信息头管理器 设置header的content-type一样是application/json
- 观察结果树 查看到响应数据的Response Body 显示请求有正确的响应
- 在JMeter使用Body Data【消息体数据】时,输入的数据是键值对的形式(如:type=username&accounts=jmUser05&pwd=123456),Content-Type只能传application/x-www-from-urlencoded
按照下图依次说明:
- HTTP信息头管理器 设置header的content-type:application/x-www-from-urlencoded
- HTTP请求 设置Body Data【消息体数据】为键值对的形式
- 观察结果树 查看到请求的Request Body的POST data 确实是以键值对的形式发送请求
- 观察结果树 查看到请求的Request Headers 的content-type确实是在HTTP信息头管理器 设置header的content-type一样是application/x-www-from-urlencoded
- 观察结果树 查看到响应数据的Response Body 显示请求有正确的响应