我正在用C++构建一个多交换机器人,我有一个小问题。KuCoin交换已经被证明是令人沮丧的,至少可以说,其中一个头部是签名头部,您使用HMAC sha256编码字符串,然后使用base64对其进行编码。然而,我并不关心编码,我可以做到这一切。让我困惑的是KuCoins应用程序接口所期望的字符串,我已经搜索了他们的文档100多次,但仍然不能正确理解,以下是说明
KC-API-KEY头部:
使用sha256 HMAC,使用API-Secret对加密字符串{timestamp+method+endpoint+body}进行加密。请求body为JSON字符串,需要与API传入的参数一致。之后,再次使用base64-encode对步骤1中的结果进行加密。
我已经尝试过以各种可能的方式制作这个字符串,文档中没有提供一个好的字符串应该是什么样子的示例,以下是我在编码之前制作的不起作用的字符串。
示例1: 1616096476134POST/api/v1/orders?clientOid=55be5&side=BUY&symbol=BTC-USDT&type=MARKET&funds=0.005000
示例2: 1616099932367POST/api/v1/orders{"clientOid":"55be5",“side”:“买入”,"symbol":"BTC-USDT",“type”:“市场”,"funds":"0"}
正如您所看到的,在第二个示例中,我尝试使用所有正确的参数将body设置为JSON字符串,但仍然返回了一个糟糕的签名错误。从字面上讲,我所需要的就是知道字符串应该是什么样子,这样我就可以正确地制作它。谢谢。
发布于 2021-09-22 20:47:03
我假设您的代码适用于没有参数的私有请求(例如,获取余额)。
对于POST请求,我也遇到了一些困难,但经过几次尝试后,我终于成功地做到了。您需要将参数转储为不带空格的JSON字符串,与示例2中的完全相同。
从那时起,你有没有设法解决这个问题?我有一个关于my application的代码,如果你感兴趣的话。
另外,不要忘记添加curl请求的头部:
Content-Type: application/json发布于 2021-10-21 12:15:08
通过Kucoin支持和pythone示例解决。"body“也必须包含在POST请求中。是:
reply = netman->post(req, "");成为:
tradereply = trademan->post(req, data);https://stackoverflow.com/questions/66698811
复制相似问题