jmeter中请求参数:Parameters、Body Data的区别

时间:2024-10-25 07:37:57

使用jmeter发送请求,常常要伴随传递参数。有两种请求参数: Parameters, Body Data, 它们的使用方式有很大不同。

先看下get和post请求的区别。

get请求:顾名思义是从服务器获取资源。

post请求:顾名思义是往服务器提交要处理的数据。

直观的来说,get把参数包含在URL中,Post通过request body传递参数将请求整体提交给服务器。

Jmeter中包含Parameters和Body Data两种参数化的方式,区别是什么呢?

 . 使用Parameters时,Content-Type不传,默认为application/x-www-form-urlencoded, 若传application/json出错。

. 使用Body Data时,Content-Type可传application/x-www-form-urlencoded或application/json,两者的区别是数据格式不同。

可以从post data中看出不同:

这个是键值对格式的参数,即application/x-www-form-urlencoded

Parameters的request请求数据

Body Data的请求数据

所以jmeter的Parameters和Body Data两种参数化方式,具体应该怎么使用呢?

一般来说,Get请求用Parameters, Post请求用Body Data

精确的对于post请求的说法是,

 . 普通的post请求和上传接口,选择Parameters。

 . json和xml点数据格式请求接口,选择Body Data。

详细来解释,post请求的参数有两种传递方式,一种是键值对的map格式,一种是json格式。

 . post请求参数为map格式时,请求的参数添加在Parameters参数表中

. post请求参数为json格式时,请求的参数放在Body Data处。