jmeter压测学习39-获取post请求x-www-form-urlencoded格式的数据

前言

post请求的参数有一些是json格式,也有一些是x-www-form-urlencoded格式,前面讲签名的时候获取到post请求的是json格式。
本篇继续讲x-www-form-urlencoded格式的请求body如何获取到。

x-www-form-urlencoded

在请求头部添加Content-Type类型为x-www-form-urlencoded

定义用户变量,账号和密码

post请求参数填写键值对

BeanShell 预处理程序

添加-前置处理器-BeanShell 预处理程序

使用 getArgumentsAsMap() 方法获取键值对的请求body

import org.apache.jmeter.config.Arguments;
import org.apache.jmeter.config.Argument;
import org.json.JSONObject;
import org.json.JSONArray;
import org.apache.commons.codec.digest.DigestUtils;    //导入md5加密的包

Arguments arguments =  sampler.getArguments();
Map reqMap = arguments.getArgumentsAsMap();
log.info("------------------------body------------------");
for (String key : reqMap.keySet()) {
    log.info("key: " + key + ",value: " + reqMap.get(key));
}
log.info(reqMap.get("username"))

查看运行结果

结果数可以查看请求头部参数类型

请求body数据:username=test&password=123456

posted @ 2021-01-12 16:17  上海-悠悠  阅读(3441)  评论(0编辑  收藏  举报