简介

runapi 是一个基于 Node.js 的 API 测试工具,可以用来测试 API 的正确性。

执行脚本案例

var appId = runapi.getVar("app_id");
runapi.setHeader("X-App-Id",appId);

var appSecret = runapi.getVar("app_secret");

// 获取当前以毫秒为单位的时间戳
var timestamp = Math.floor(Date.now() / 1000);
runapi.setHeader("X-Timestamp",timestamp);

// 对参数进行排序
var params = runapi.getAllQuery();
var params_handle = {};
if(params){
    params.forEach(function(item) {
        params_handle[item.name] = item.value;
    });
}
let sortedParams = {};
Object.keys(params_handle).sort().forEach(key => {
    sortedParams[key] = params_handle[key];
});

// 构建签名字符串
let stringToSign = appId + timestamp;
for (let key in sortedParams) {
    let value = sortedParams[key];
    if (typeof value === 'string' || typeof value === 'number') {
        stringToSign += key + value;
    }
}

// 生成签名
const signature = runapi.CryptoJS.HmacSHA256(stringToSign, appSecret).toString();
runapi.setHeader("X-Signature",signature);

  
Last Updated:
Contributors: hqdxhyf