Postman使用

Postman使用

Pre-request Script

参考:

可以请求、集合或文件夹中添加Pre-request Script,在请求运行之前执行JavaScript

如设置变量值、参数、Header和正文数据,也可以使用Pre-request Script来调试代码,如将日志输出到Postman Console

执行顺序如下:

对于集合中的每个请求,脚本将始终根据相同的层次结构运行。 集合级脚本(如果有)将首先运行,然后是文件夹级脚本(如果有),然后是请求级脚本(如果有)。 请注意,此执行顺序适用于预请求脚本和测试脚本。

已例子来说,请求时可能会带上sign签名信息,而sign签名信息通常是url中请求参数按特定规则生成的

这个时候,就可以使用Pre-request Script了

如下的Post请求中,Header中需要带有sign等参数:

javascript 复制代码
//uuid
var uuid = "";
pm.environment.set('uuid', uuid);

//获取当前时间戳
var timestamp = new Date().getTime();
//添加timestamp到环境变量
pm.environment.set('timestamp', timestamp);
// console.log("timestamp: " + timestamp)

//随机字符串
var noncestr = require('uuid');
var mynoncestr = noncestr.v4().replace(/-/g, '');
pm.environment.set('mynoncestr', mynoncestr);
// console.log("mynoncestr: " + mynoncestr);
....

//json
var jsonObj = ..........;
var data = JSON.stringify(jsonObj);
console.log(data);
var signStr =  uuid等字符串拼接..........;
console.log("signStr: " + signStr);
//sign
var sign = CryptoJS.enc.Hex.stringify(CryptoJS.SHA512(signStr))
console.log(sign);
pm.environment.set('sign', sign);

然后再Header中设置如下:

获取url中的请求参数

参考:

javascript 复制代码
var query = {};
pm.request.url.query.all().forEach((param) => {
    query[param.key] = param.value;
});
console.log("query = " + JSON.stringify(query));
相关推荐
罗超驿1 天前
SpringMVC 请求参数接收详解|单个参数、多参数、对象参数、@RequestParam参数重命名
java·后端·postman·javaee
降临-max2 天前
Postman断言、数据驱动+Jenkins集成
软件测试·测试工具·postman
大志哥1235 天前
POSTMAN&APIPOST不支持字符编码设置的代偿方案
测试工具·postman
摸摸芋7 天前
postman(ai篇)
测试工具·postman
小小尚@13 天前
AE脚本-AE Actions v1.1.8 操作动作记录器
开发语言·前端·javascript·jupyter·postman
Bobolink_17 天前
TCP参数调优:跨境链路上改哪几个内核参数最管用
tcp/ip·参数·链路·跨境网络
Pluchon20 天前
Java个人综合项目——萌部落社区V2.0
java·python·spring·spring cloud·postman·idea
昨夜星河入梦来23 天前
postman接口测试报错503的解决方法
开发语言·postman
冷凝娇24 天前
【Postman】2026总结
测试工具·postman