在Postman的脚本中使用pm对象获取接口的请求参数

在Postman的脚本中使用pm对象获取接口的请求参数

1、获取在Query Params中输入的参数

query params页面

在tests中写脚本做后置处理:(此处以设置不同类型用户的全局变量为例)

java 复制代码
// JSON字符串转换成 JavaScript 对象
var data = JSON.parse(responseBody);
//get token
var token = data.data.token;
//get type from Params
var type = pm.request.url.query.get('type');

//print test
console.log(type);
//set globals token
if(type == 'admin'){pm.globals.set("adminToken", token);}
if(type == 'user'){pm.globals.set("userToken", token);}
if(type == 'deliver'){pm.globals.set("deliverToken", token);}

执行后的响应信息:

执行后可在console中可见获取到的print type:

执行后可在environment quick look中可见变量信息:

全局变量的引用(以在header中引用为例)

使用双花括号进行引用:{``{deliverToken}}

执行后的效果:

2、获取在Body中输入的参数

其中tests中的关键:

java 复制代码
//get type from Body
var type = pm.request.body.formdata.get('type');

执行后对应的终端输出信息:

同理可在environment quick look中可见变量信息:

3、pm对象常用用法

java 复制代码
请求body参数个数:
pm.request.body.formdata.count()
新增参数:
pm.request.body.formdata.add({key: "key",value: "value"})
在末尾新增参数:
pm.request.body.formdata.append({key: "key",value: "value"}) 
获取所有body参数:
pm.request.body.formdata.all()
以JSON形式返回参数:
pm.request.body.formdata.toJSON() 
清空body的formdata数据:
pm.request.body.formdata.clear()
获取指定的参数值:
pm.request.body.formdata.get("key")
判断参数是否存在:
pm.request.body.formdata.has("key")
移除指定的参数:
pm.request.body.formdata.remove("key")

END


相关推荐
Madison-No73 天前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
ysu_031411 天前
Postman接口调试实战指南-从HTTP请求到环境变量-Collection与自动化测试
网络·网络协议·测试工具·http·api·postman·可用性测试
开开心心_Every12 天前
文件夹批量创建工具支持同级和多层级
运维·服务器·游戏·jupyter·智能手机·pdf·postman
花间相见22 天前
【计算基础|网络04】—— HTTP接口实战(下):接口测试、鉴权与跨域排错
java·linux·人工智能·后端·python·计算机网络·postman
Madison-No724 天前
基于JMeter工具的性能测试(接口)
python·jmeter·postman
Joyce_xiaobaibai1 个月前
windows+Postman Newman+接口巡检
postman
Tinyfacture1 个月前
postman抓取登录鉴权码token及设置全局变量
测试工具·postman
川石课堂软件测试1 个月前
涨薪技术|Prometheus之HTTP API中使用PromQL
网络协议·测试工具·jmeter·http·单元测试·postman·prometheus
x10n91 个月前
Postman 汉化完整指南
测试工具·lua·postman
AI情绪识别开源1 个月前
检信 Allemotion 认知功能障碍矫正软件· 数据方案
人工智能·postman