Postman是一个非常强大的HTTP接口测试工具,但是最近项目接口升级,为了防止恶意请求,所有的接口都增加了签名的校验。这样安全性更高,但是在使用Postman自测接口的时候会比较麻烦,每次都需要生成一个临时的签名,而且使用一次之后就会过期。 本文借助Postman的
Pre-request Scritp
可以实现自动签名功能,每次请求都会生成一个新的签名
//签名一般都会使用时间戳,一方面可以生成随机字符串,一方面也用来保证请求的及时性
let timestamp = new Date().getTime();
pm.environment.set("timestamp", timestamp);
//签名的必备参数
let appid = pm.globals.get("appId");
let appSecret = pm.globals.get("appSecret");
//签名中用到的参数
let str = request.data["name"] + request.data["age"];
//计算签名(很多项目中的签名,原始字符串还会加入请求参数)
let sign = CryptoJS.MD5(str + appid + appSecret + timestamp).toString();
pm.environment.set("sign", sign);
console.log("timestamp: " + timestamp + " , appId: " + appid + ", appSecret: " + appSecret + ", sign: " + sign);