使用python调用私有API



我对API相当陌生,所以我在这里遵循了一些教程和帖子,但是我有使用客户端ID和secret调用API的问题,API使用承载令牌进行身份验证,我无法正确获得身份验证。下面是我使用的:

import base64
import requests
client_id = "abcd123"
client_secret = "EFGH456"
authorization = base64.b64encode(bytes(client_id + ":" + client_secret, "ISO-8859-1")).decode("ascii")
headers = {
"Authorization": f"Basic {authorization}",
"Content-Type": "application/x-www-form-urlencoded"
}
body = {
"grant_type": "client_credentials"
}
response = requests.post("https://mywebsite/api/", data=body, headers=headers)
print(response.text)

我不确定如何获取和存储承载令牌,以及我使用的代码有什么问题。提前谢谢你。

应该在授权头值前加上Bearer,而不是Basic。我假设您已经正确地编码了您的令牌。

headers = {
"Authorization": f"Bearer {authorization}",
"Content-Type": "application/x-www-form-urlencoded"
}

查看这篇文章,以获得对差异的解释。

相关内容

  • 没有找到相关文章