파이썬을 사용하여 암호화 API 인 poloniex.com에서 거래 API에 액세스하려고합니다. 이를 위해 나는이 처방 따라야합니다HMAC-SHA512 및 Python 요청 라이브러리를 사용하여 POST 요청을 서명하려면 어떻게합니까?
거래 API에 대한 모든 호출이 https://poloniex.com/tradingApi에 HTTP POST를 통해 전송을 다음과 같은 헤더를 포함해야합니다
키 - 당신의 API 키를.
Sign - HMAC-SHA512 방법에 따라 키의 "secret"에 의해 서명 된 쿼리의 POST 데이터입니다.또한 모든 쿼리에는 "nonce"POST 매개 변수가 포함되어야합니다. nonce 매개 변수는 항상 사용 된 이전의 nonce보다 큰 정수 여야합니다.
여기까지 제가 지금까지 있습니다. 현재 문제는 불완전한 요청을 먼저 보내지 않고 서명 할 수 있도록 POST URL을 컴파일하는 방법을 모른다는 것입니다. 이것은 분명히 작동하지 않습니다.
import requests
import hmac
import hashlib
import time
headers = { 'nonce': '',
'Key' : 'myKey',
'Sign': '',}
payload = { 'command': 'returnCompleteBalances',
'account': 'all'}
secret = 'mySecret'
headers['nonce'] = int(time.time())
response = requests.post('https://poloniex.com/tradingApi', params= payload, headers= headers)
headers['Sign'] = hmac.new(secret, response.url, hashlib.sha512)
너무 빨랐습니다. 정말 고마워요! – Werhli
@MartijnPieters 내가 이것을 실행하면 'Request'객체에 'body'속성이 없다는 오류가 발생합니다. 이 줄의 경우 : signature = hmac.new (secret, request.body, digestmod = hashlib.sha512) –
@abcla가 수정되었습니다. –