@znode/sign
Version:
signature algorithm
14 lines (13 loc) • 538 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.sign = void 0;
const sha1_1 = require("@zodash/sha1");
function sign(data) {
// 1. 按照字段名的ASCII 码从小到大排序(字典序)
const _data = ['url', 'jsapi_ticket', 'noncestr', 'timestamp'].sort((a, b) => a.localeCompare(b));
const paris = _data.map((key) => [key, data[key]]);
const text = paris.map(([key, value]) => `${key}=${value}`).join('&');
// 2. sha1
return sha1_1.default(text);
}
exports.sign = sign;