问题描述
首先,抱歉我的英语不好,感谢您点击这个问题。
我正在尝试将我的 Python 代码更改为 Node.js 代码。 (关于base64/HMAC编码)
问题是我找不到将下面的 python 代码更改为 Node.js 代码的适当方法
passphrase = base64.b64encode(
hmac.new(api_secret.encode('utf-8'),api_passphrase.encode('utf-8'),hashlib.sha256).digest())
我只想使用 node 的 crypto 模块,但是在第一个 'sha256' 参数之后只有一个参数选项,如下所示。
crypto.createHmac('sha256',api_secret);
// There is no argument position of 'api_passphrase'
如何使用两个参数(如 node.js 上的 python 代码)创建 hmac?
解决方法
关于蟒蛇,
signature = base64.b64encode(
hmac.new(api_secret.encode('utf-8'),api_passphrase.encode('utf-8'),hashlib.sha256).digest())
在 Node.js 上
signature = crypto.createHmac('sha256',api_secret).update(str_to_sign).digest('base64');