pm.environment.set("timestamps", Math.floor(new Date().getTime() / 1000));
var token = "lBZXpB5uRw5M";
var timestamps = pm.environment.get("timestamps");
var data = request.data; //获取请求参数,转为json
console.log("data:", data)
var newdata = [];
newdata.push({
name: 'timestamp',
value: timestamps
})
for (var a in data) {
if (a !== 'sign' && a !== 'timestamp') { //过滤掉sign参数,生成键值对象{name,value}
newdata.push({
name: a,
value: data[a]
})
}
}
//排序
newdata.sort(function (a, b) {
return a.name === b.name ? 0 : a.name > b.name ? 1 : -1
});
//拼接字符串
for (var ar = [], i = 0; newdata.length > i; i++) {
var key = newdata[i].name;
var val = newdata[i].value;
if(key == 'name'){
val = encodeURIComponent(newdata[i].value);
}
key && val && ar.push(key + "=" + val)
}
str = ar.join("&"); //拼接字符串
str = str+token
// str = encodeURIComponent(str);
console.log(str);
str = CryptoJS.MD5(str).toString().toLowerCase(); //md5加密后转大写
pm.environment.set("sign", str); //把sign设置为环境变量
console.log(str);