node.js - Binance - msg:“此请求的签名无效。”
问题描述
我一直在尝试根据本文档使用 NodeJs API向 Binance 发出 API 请求,但我不断收到以下响应,但我不知道为什么。
[Object: null prototype] {
code: -1022,
msg: 'Signature for this request is not valid.'
}
我在互联网上寻找解决方案,但所有“修复”似乎都不起作用。
这是向 Binance 发出请求的实际函数:
这是我调用该函数的代码:
const result = await binance.futuresTransferAsset("USDT", "1", [Enum.UMFUTURE_MAIN])
我一直在尝试调试它,但没有任何成功,所以如果有人知道,请帮助我。
这是实际的功能:
futuresTransferAsset: async ( asset, amount, type ) => {
let params = Object.assign( { asset, amount, type } );
console.log(params)
return promiseRequest( 'v1/futures/transfer', params, { base:sapi, type:'SIGNED', method:'POST' } );
}
解决方案
根据 Binance API 文档,signature
您尝试访问的端点是必需的。
因此,在请求正文中包含您的签名以获得有效响应。这意味着您必须使用HMAC SHA256
标准签署您的请求。
如果错误仍然存在,我强烈建议您使用 Binance 的官方 API,而不是使用其他一些随机库。
你可以在这里获得更多信息