【问题标题】:Axios Encrypted POST parametersAxios 加密 POST 参数
【发布时间】:2018-06-08 21:20:30
【问题描述】:

我想使用来自 bitgrail 的 API(文档:https://bitgrail.com/api-documentation)。并要求余额金额。为此,您必须设置一个 SIGNATURE,其中包含使用 HMAC-SHA512 和您的 API-Secret 的加密后参数。

所以你必须发送这个数据:

标题:

KEY - 公共 API 密钥

SIGNATURE - 使用您的 API 密钥使用 HMAC-SHA512 算法加密 POST 参数

数据:

nonce - 整数,总是大于之前调用的 nonce。

但每次我尝试发送请求时,我都会收到来自 Bitgrail 的“身份验证失败”错误。

参数设置如下:

params = {}
params.nonce = n();

然后像这样加密:

 let hmac = crypto.createHmac('sha512', 'MYSECRET');
 let digest = hmac.update(params.toString()).digest('hex');
 let signature = new Buffer(digest).toString('base64');

也许“params.toString()”不起作用。我必须将 params 变量设置为数组吗?

【问题讨论】:

    标签: rest post header axios signing


    【解决方案1】:

    我自己用 const { URLSearchParams } = require('url'); 自己想出来的 并删除这一行:let signature = new Buffer(digest).toString('base64'); 并仅使用摘要作为签名。

    【讨论】:

      猜你喜欢
      • 2019-01-03
      • 1970-01-01
      • 2019-02-28
      • 2017-07-02
      • 1970-01-01
      • 2019-03-05
      • 2019-04-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多