使用Binance API签名无效错误

时间:2020-04-11 19:30:51

标签: javascript rest algorithmic-trading binance

this.GetTrades = function(symbol){    // Work in Progress signature not valid for some reason...
  var binance_private = "https://api.binance.com/api/v3" 
  var key             = API    
  var secret          = SECRET
  var timestamp       = new Date()
  var request         = "&timestamp="+timestamp.getTime()+"&recvWindow=60000"
  var apisign         = Utilities.computeHmacSha256Signature(request,secret).reduce(function(str,chr{
  chr = (chr < 0 ? chr + 256 : chr).toString(16)
  return str + (chr.length==1?'0':'') + chr
  },'');; 

  var uri             = binance_private + "/myTrades?" + request + "&symbol=" + symbol +  
                        "&signature=" + apisign 
  var headers         = {
   "X-MBX-APIKEY": key
  }
  var params          = {
  "method": "get",
  "headers": headers
  }
  var response = UrlFetchApp.fetch(uri,params)
  var dataAll  = JSON.parse(response.getContentText())
  return dataAll
}

当我尝试运行此代码时,此代码在币安交换上触发“签名无效”错误。我环顾四周,尝试了多种修复方法,包括非常完善和刷新我的api,更改接收窗口(文档说它必须在 以下60000,但将其设置为60000可以正常工作)以及其他一些小的调整。我正在使用Google表格中的Google Apps脚本对此进行编码。

使用几乎相同的逻辑,在此代码可以正常工作的地方:

this.getBalance = function(){    
  var binance_private = "https://api.binance.com/api/v3" 
  var key             = API    
  var secret          = SECRET
  var timestamp       = new Date()
  var request         = "&timestamp="+timestamp.getTime()+"&recvWindow=60000"
  var apisign         = Utilities.computeHmacSha256Signature(request,secret).reduce(function(str,chr){
  chr = (chr < 0 ? chr + 256 : chr).toString(16);
  return str + (chr.length==1?'0':'') + chr;
  },'');; 

  var uri     = binance_private + "/account?" + request + "&signature="+apisign 
  var headers = {
  "X-MBX-APIKEY": key
  }
  var params  = {
    "method": "get",
    "headers": headers
  }
  var response = UrlFetchApp.fetch(uri,params)
  var dataAll  = JSON.parse(response.getContentText())
  return dataAll
}

链接到Binance Api文档:https://github.com/binance-exchange/binance-official-api-docs/blob/master/rest-api.md#account-trade-list-user_data

0 个答案:

没有答案