Python requests,访问API时总是出现401错误

3 投票
2 回答
2988 浏览
提问于 2025-04-18 04:17

我正在尝试通过请求库连接到这个API。具体来说,我想访问“所有应用程序”的接口,但我在建立初始连接时遇到了问题。

>>> import requests
>>> 
>>> url = "https://manager.gimbal.com/api/applications"
>>> headers = {
... 'Authorization': 'Token <MyApiKeyIsHere>',
... 'content-type': 'application/json'
... }
>>> 
>>> 
>>> 
>>> r = requests.get(url, headers=headers)
>>> r
<Response [401]>

我有点困惑,为什么我没有获得对这个API的授权连接。如果有人能提供一些建议,那就太好了。

2 个回答

0

试着获取结果:

使用这个命令:

curl -X GET -H "Content-Type: application/json" -H "AUTHORIZATION: Token token=exxxx....xxxxxxxxxxxx6" https://manager.gimbal.com/api/applications

这里的头部信息是:

headers = {
... "Authorization: Token ",
... "content-type: application/json"
... }

4

文档似乎指出,实际的值是 token=TOKEN,而不仅仅是那个 token 本身...

AUTHORIZATION: Token token=my_organization_server_api_key

试着把

'Authorization': 'Token <MyApiKeyIsHere>',

替换成这个,看看它是否能正常响应

'Authorization': 'Token token=<MyApiKeyIsHere>',

撰写回答