ColdFusion:Binance API:未读取所有发送的参数

问题描述 投票:0回答:1

这些加密 API 将要我的命。 最后,币安 API 已排序且签名正常工作。 但现在当所有变量都被传递时,我收到下面的错误 -1104。

{"code":-1104,"msg":"未读取所有发送的参数;读取'4'参数,但发送了'5'。"}

我确定它是签名变量。

币安API注释:已签名(交易和用户数据)端点安全

SIGNED 端点需要在查询字符串或请求正文中发送附加参数、签名。

端点使用 HMAC SHA256 签名。

HMAC SHA256 签名是密钥化的 HMAC SHA256 操作。

使用您的secretKey作为密钥,使用totalParams作为HMAC操作的值。

签名不区分大小写。 TotalParams 定义为与请求正文连接的查询字符串。

这是有效的 cfhttp 发送。这是正在发送的尸体。

符号=SHIBUSDT&side=卖出&类型=市场&时间戳=1645629335613&签名=1071B5C8BF8727FD465483543BC93A7FF5EBD35AC63A8219E166238E552A7867

5个参数(交易品种、边、卖出、类型、时间戳、签名)

<cfhttp url="#base_api##req_path#" method="POST" result="result" charset="utf-8">
  <cfhttpparam type="header" name="X-MBX-APIKEY" value="#bn_key#"> 
  <cfhttpparam type="body" value="#thebody#">
</cfhttp> 

下图:这个 cfhttp 发送也可以工作。前面咯咯地笑,我将签名添加到 URL 调用中。 这是正在发送的尸体。

符号=SHIBUSDT&side=卖出&类型=市场&时间戳=1645629335613

5 个参数(符号、边、卖出、类型、时间戳、URL ? = 签名)

<cfhttp url="#base_api##req_path#?signature=XXXXXSIGSTUFFXXX" method="POST" result="result" charset="utf-8">
  <cfhttpparam type="header" name="X-MBX-APIKEY" value="#bn_key#"> 
  <cfhttpparam type="body" value="#thebody#">
</cfhttp> 

寻求修复,我似乎发现这通常是参数上的拼写错误。但这些是正确的参数。 想法? 或者有其他方式发送签名吗?如果作为标头发送,则会出错。

coldfusion coldfusion-2016 binance-api-client
1个回答
0
投票

请添加数量作为另一个参数,不知道数量的情况下无法接受订单。

© www.soinside.com 2019 - 2024. All rights reserved.