Postcatlab / Postcatlab/postcat

1.希望增加Api签名计算完整插件

Open
#147 2 comments 0 reactions 0 assignees View on GitHub
feature-request
Dominant language
JavaScript
Stars
5.5k
Forks
796
PR merge metrics
No merged PRs in 30d

Description

1.希望增加Api签名计算完整插件
2.希望能增加前置脚本保存功能

3. 计算签名测试代码如下
4. var jsonObj = eo.http.queryParam; //获取请求参数
var timestamp = new Date().getTime(); //生成时间搓
let map = new Map()
Object.keys(jsonObj).forEach(val => {
map.set(val, jsonObj[val])
});
let arrayObj = Array.from(map)
arrayObj.sort((a, b) => {
return a[0].localeCompare(b[0])
})

let content = "";

arrayObj.forEach(
function (value, index, arrobj) {
if (index != 0) {
content += "&";
}
content += value[0] + "=" + value[1];

}
);
if (content != "") {
content += "&";
}
content += "timestamp=" + timestamp; //#根据服务端要求拼接时间搓
var prs = 'MIICeAIBADANBgkqhkiG9w0BAQEFAASCAmIwggJeAgEAAoGBAMVGbnbf6VJDDVK2YvYmrKY7xKGdlfeLmR98Sr7zBXdaM2UiO81Eq02b1rX5IOaWIezmn8M3+e/ZBLjDxDMlxKT5CV9T+VcX4u5ekGMA4MaWlBqLVPrTM6T43HgpfXzApqWHqZT/niIfd64YaBGOrZdbwyvOTwG/mnrOPVLqBst7AgMBAAECgYEAuwvz0xytAoV3DXTHUjMLQjarUr2zItqm3fagfHq6NRc+Yebaot84OUbIhxPnARtaoV9uHdBmV+cCFhnwXrqxvjvoPdRH2CeBIdW/JpBpf6zWjycWiI6kmtwToqFBXyznXwiulWzQPPq5HYKzoBNXeJ3y7L9wHe7uCAnudssbMJkCQQDmDN9UD9Ct7wnP40kwFcRuH6oL1qS4pHNalo0RdmNmOV/6gz+uXjwwY1/VCuLethS9JLDXmtxBSlgPJ0QueexNAkEA24cdoQ8y5E4rIlE+nYvuDEQnzTLBiw3H3UmYKrxX89AV0sSDLFZuIWGzAVkK+zI4u8Ou7vR1hS9b18QKsm3a5wJBAMOY6kGk+L8KYQNasp2pxEwFrCVIqOE9Ib9CBkt0p2sBGXP8KCbvhKl3tMGE8gR+N//htGJ9DwyMU3b+4d/KVnkCQFB+//dR2mhq3VgtEFe2uqgWyb1tchiqCfJzjO+Gtn15fLcXRb4ZRzLIX1oMK4GmjbUT8O5AB2O51OSORxncPFsCQQDZo237o+C+jYiKFc5H+vTIZs6AOBBDBT6kg6dFfjftqaoYCox1Dj1ukdSsjtaH6bZZBxs7KXdRkcwRFvIptg/f';
var privateKey = "-----BEGIN PRIVATE KEY-----\n" + prs + "\n-----END PRIVATE KEY-----";
var sign = eo.crypt.rsaSHA256(content, privateKey, "base64"); //#拼接的内容进行计算
eo.info("加密的签名字符串" + content);
eo.info("签名" + sign);
eo.http.header.set("timestamp", timestamp); //#请求头中填充时间错
eo.http.header.set("sign", sign); //#请求头中填充sign

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.