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));
相关推荐
mewowaBc4 天前
postman使用细则
测试工具·postman·偏差
洋不写bug7 天前
HTTP(二):万字解析HTTP交互的请求、响应报文格式
网络协议·http·交互·postman·请求格式·响应格式·restful规范
j7~11 天前
【Linux网络加餐】《HTTPS 协议原理》---详解
网络·网络协议·https·加密·ca认证·解密
weihubeats15 天前
10 MB 的 Postman 替代品,启动不到 1 秒
测试工具·postman
biaov18 天前
使用 Windows 自带的 VHDX + BitLocker 加密学习资料
windows·加密
菜鸟阿达21 天前
Postman 有哪些免费/开源的替代品?2026 年接口工具选型参考
测试工具·开源·postman
菜鸟阿达21 天前
我把 API 调试工具做成了浏览器版“Postman“,开源了:HTTP/SSE/WebSocket 全能测
http·开源·postman
Madison-No724 天前
多语言聊天大模型--测试报告
linux·git·python·selenium·jmeter·自动化·postman
ysu_03141 个月前
Postman接口调试实战指南-从HTTP请求到环境变量-Collection与自动化测试
网络·网络协议·测试工具·http·api·postman·可用性测试
开开心心_Every1 个月前
文件夹批量创建工具支持同级和多层级
运维·服务器·游戏·jupyter·智能手机·pdf·postman