Allcoin签名POST请求失败

2024-10-01 17:38:32 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的API需要MD5加密来处理POST请求。我正在尝试使用文档https://www.allcoin.ca/api_market/market向API发出一个“userBalance”请求,但每次它都返回{code':1,“msg':'签名校验失败'} (这意味着签名检查失败)。API只要求2个参数,即API密钥和符号。我仔细地遵循了文档的指导,但是API仍然拒绝了这个帖子。有什么建议为什么它没有通过签名检查吗?我错过什么了吗

import hashlib
import keys
import requests

KEY = keys.allcoin["key"]
API_SECRET = keys.allcoin["secret"]

msg = "api_key='{}&secret_key={}".format(KEY, API_SECRET)
signature = hashlib.md5(msg.encode("utf-8")).hexdigest()

parameters = {
    "api_key": KEY,
    "sign": signature.upper(),
}

params = "&".join("{}={}".format(a, b) for a, b in parameters.items())
url = "http://www.allcoin.ca/Api_User/userBalance"
r = requests.post(
    headers={
        "Content-Type": "application/x-www-form-urlencoded",
        'user-agent': 'my-app/0.0.1'
    },
    url=url,
    params=parameters
)
print(r.json())

Tags: key文档importapiurlwwwmsgkeys

热门问题