2017-09-14 4 views
0

J'essaie d'utiliser l'API à https://c-cex.com/ pour créer une application de trading bitcoin pour mon portefeuille et je rencontre un problème avec l'utilisation des fonctions privées qui nécessitent une authentification. Il fournit un exemple de php comment connecter et je fis de mon mieux pour recréer en python mais son retour que ma clé est invalide (bien que j'ai copié le apikey directement à partir de mon emailClé API invalide hmac python

apikey='141FA9467F8EAC7917A9D6279AD96B4F'; 
apisecret='6A946F6A331F8CCDFA19EB2D73FD9B1D'; 
dt = datetime.datetime.now() 
nonce= (dt - datetime.datetime(1970,1,1)).total_seconds() 

uri='https://c-cex.com/t/api.html?a=getbalance&currency=BTC&apikey=' + apikey + '&nonce=' + str(nonce); 
sign = hmac.new(bytes(apisecret,encoding='utf-8'), uri.encode(encoding='utf-8'), hashlib.sha512).hexdigest() 
headers = {'apisign': sign} 

response = requests.get(uri,headers) 
print(response.json()) 

et la sortie qui est renvoyée est

{'result': None, 'success': False, 'message': 'APIKEY_INVALID'} 

la meilleure hypothèse que je peux faire est que je ne suis pas en utilisant la fonction HMAC correctement, je l'ai testé avec 2 clés API séparées (ma clé API réelle et ce test un dans le code qui n'a accès qu'aux fonctions GET)

Répondre

0

Je n'étais pas ab Pour trouver des réponses, j'ai regardé quelques projets open source qui feraient quelque chose de similaire.

encoding='ASCII' 

était la réponse