背景:大部分的接口请求为了安全,都会进行MD5动态加密,如果无法实现加密,很可能无法进行模拟请求(当然,也可以让开发加密钥开关绕过加密,如果开发足够friendly~)
示例:
// 获取当前时间戳(13位)
var ts = Date.now()
// 设置时间戳环境变量(接口请求时,时间戳需要保持一致)
pm.globals.set("ts", ts);
console.log(ts)
// 签名加密对象包括渠道id,密钥,时间戳 (其中渠道和密钥是从环境变量中获取)
var str = pm.environment.get('channelId') + pm.environment.get('secret') + ts
console.log(str)
// MD5加密
sign = CryptoJS.MD5(str).toString();
// 将加密后的签名赋值环境变量
pm.environment.set('sign',sign);
console.log('md5 is', sign);
PS:CryptoJS.MD5是postman内置的方法,无需外部引入
PPS:加密对象有顺序要求,具体看开发实现