UNPKG

@znode/sign

Version:
30 lines (29 loc) 988 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.signWs = exports.sign = void 0; const hmac_1 = require("@zodash/hmac"); const qs = require("@zcorky/query-string"); function sign(data, secret) { const _method = data.method.toUpperCase(); let _query = ''; let _body = ''; if (data.query && Object.keys(data.query).length > 0) { _query = '?' + qs.stringify(data.query); } if (data.body && Object.keys(data.body).length > 0) { _body = JSON.stringify(data.body); } const _text = [data.timestamp, _method, data.path, _query, _body]; const text = _text.join(''); return hmac_1.hmacSHA256(text, secret, 'base64'); } exports.sign = sign; function signWs(timestamp, secret) { const t = Math.floor(timestamp / 1000); const text = `${t}GET/user/verify`; return hmac_1.hmacSHA256(text, secret, 'base64'); } exports.signWs = signWs; const _sign = sign; _sign.ws = signWs; exports.default = _sign;