0
我做節目從HitBTC的問題的REST API命令與Python 3
我認爲這是正確實施,但將返回一個錯誤。
錯誤是403簽名錯誤。
該文檔的簽名定義是連接uri和postData的hmac-sha 512的小寫十六進制表示形式。
HitBTC文檔 - >https://hitbtc.com/api#tradingrestful
我想讓你告訴我下面的程序中的錯誤。python3 HitBTC問題的REST API
API_KEY = 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXX'
SECRET_KEY = 'YYYYYYYYYYYYYYYYYYYYYYYYYYYYYY'
BASE_URL = 'http://demo-api.hitbtc.com'
nonce = str(int(time.mktime(datetime.datetime.now().timetuple()) * 1000 + datetime.datetime.now().microsecond/1000))
req = {
'clientOrderId': "".join(random.choice(string.digits + string.ascii_lowercase)for _ in range(30)),
'symbol': 'BTCUSD',
'side': 'buy',
'price': '3',
'quantity': '100',
'type': 'limit'
}
postdata = urllib.parse.urlencode(req)
url_path = '/api/1/trading/new_order?apikey=' + API_KEY + '&nonce=' + nonce
signature = hmac.new(SECRET_KEY.encode(), (url_path + postdata).encode(), hashlib.sha512).hexdigest()
reuslt = requests.post(BASE_URL + url_path, params=postdata, headers={'X-Signature': signature})
print(reuslt.json())
你在哈希urlquoted數據併發送JSON。這樣哈希不能匹配。 –
我看了評論。非常感謝你。我解決了它,但它不好。 –