gpt4 book ai didi

python - 发布API授权

转载 作者:太空宇宙 更新时间:2023-11-03 14:39:47 25 4
gpt4 key购买 nike

我是 python 初学者,但我想从加密货币市场 bitbay.net 上的私有(private)帐户获取信息数据。

Api description can be found here:

我的 Python 3.5 代码:

import requests
import json
import hashlib
import time

hash_object = hashlib.sha512(b'public_api_xxxxxx')
apihash = hash_object.hexdigest()
timestamp = time.time()

p = requests.post('https://bitbay.net/API/Trading/tradingApi.php', data={'API-Key':'public_api_xxxxxx','API-Hash':apihash,'Moment':timestamp, 'Method':'info' })
p.text
print(p)

我花了很多时间来解决这个问题,但我仍然得到:

回复[404]

非常感谢您的帮助。为了获得最佳答案,我想买小瓶啤酒:)提前谢谢您!

最佳答案

执行hash_mac等价,您可以使用 hmac :

apihash = hmac.new(secret, data, hashlib.sha512).hexdigest()

此外,从文档中,API-KeyAPI-Hash 是 header 。 momentmethod 字段在正文中进行 url 编码

Python2

import requests
import hashlib
import hmac
import time
import urllib

secret = "12345"
apiKey = "public_api_xxxxxx"

timestamp = int(time.time())

data = urllib.urlencode((('method', 'info'),('moment', timestamp)))

apihash = hmac.new(secret, data, hashlib.sha512).hexdigest()

res = requests.post('https://bitbay.net/API/Trading/tradingApi.php',
headers={
'API-Key':apiKey,
'API-Hash' : apihash,
'Content-Type' : 'application/x-www-form-urlencoded'
},
data=data
)

print(res)
print(res.text)

Python3

import requests
import hashlib
import hmac
import time
import urllib

secret = b"12345"
apiKey = "public_api_xxxxxx"

timestamp = int(time.time())

data = urllib.parse.urlencode((('method', 'info'),('moment', timestamp)))

apihash = hmac.new(secret, data.encode('utf-8'), hashlib.sha512).hexdigest()

res = requests.post('https://bitbay.net/API/Trading/tradingApi.php',
headers={
'API-Key':apiKey,
'API-Hash' : apihash,
'Content-Type' : 'application/x-www-form-urlencoded'
},
data=data
)

print(res)
print(res.text)

关于python - 发布API授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46626091/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com