Discord API 401在尝试获得公会角色时未授权错误



所以我要做的是为我的机器人创建某种仪表板,我想获得当前的公会角色。当我尝试这样做时,我得到{'message': '401: Unauthorized', 'code': 0}作为响应。我尝试了一切,看了多个问题以及github上的问题

json.loads(discord_oauth.discord.get(f"/api/guilds/{server}/roles", headers={"Authorization": "client-secret-here"}).content)

如果你问为什么我没有把Bearer在我的客户端秘密前面,那是因为我使用的库已经把它放在前面了。所以标题会像这样返回:{"Authorization": "Bearer client-secret-here"(我试着把它,但它没有工作)

我试着用request .get()来做,但它也不起作用。我总是得到{'message': '401: Unauthorized', 'code': 0}作为回应。我该如何解决这个问题?

(这个代码不工作,只有当我试图获得公会频道和公会角色。它适用于公会和用户信息)

我的范围是:["guilds", "identify"]

HTTP 401响应总是授权错误,告诉您没有提供正确的凭据,或者您的凭据已过期。

你从Discord那里得到客户端令牌了吗?如果是这样,您是否使用了由Discord REST API文档提供的bot语法?根据我所看到的,你的行应该像这样:

token = 'MTk4NjIyNDgzNDcxOTI1MjQ4.Cl2FMQ.ZnCjm1XVW7vRze4b7Cq4se7kKWs'
headers = {"Authorization": f"Bot {token}"}
result = discord_oauth.discord.get(f"/api/guilds/{server}/roles", headers=headers).content
data = json.loads(result)

如果您遵循了这些指示,但仍然得到401个错误,我敢打赌您的凭据无效,这意味着令牌已被撤销。这意味着您可能应该获得一个新的令牌。

最新更新