Discord OAuth returns 缺少“请求中的代码
Discord OAuth returns missing "code in request
我正在尝试使用一个简单的示例从 Discord API 中获取访问令牌。我有授权码,但我正在努力将其交换为访问令牌。
到目前为止我的代码:
const code = **my authorization code**;
const CLIENT_ID = **my client id**;
const CLIENT_SECRET = **my client secret**;
const creds = btoa(`${CLIENT_ID}:${CLIENT_SECRET}`);
fetch(`https://discordapp.com/api/oauth2/token?grant_type=authorization_code&code=${code}&redirect_uri=${redirect}`,
{
method: "POST",
headers: {
Authorization: `Basic ${creds}`,
},
})
.then((res) => res.json())
.then((body) => console.log(body));
但是,当我 运行 这段代码时,出现以下错误:
{
error: 'invalid_request',
error_description: 'Missing "code" in request.'
}
我知道如何解决这个问题。因此 Discord API 已更新,您不能再在 URL 中指定代码、授权类型和重定向 URI。您需要将其从 URL 中删除并放入正文中。
这应该可以解决问题:https://sourceb.in/BGWsbUzope
我正在尝试使用一个简单的示例从 Discord API 中获取访问令牌。我有授权码,但我正在努力将其交换为访问令牌。
到目前为止我的代码:
const code = **my authorization code**;
const CLIENT_ID = **my client id**;
const CLIENT_SECRET = **my client secret**;
const creds = btoa(`${CLIENT_ID}:${CLIENT_SECRET}`);
fetch(`https://discordapp.com/api/oauth2/token?grant_type=authorization_code&code=${code}&redirect_uri=${redirect}`,
{
method: "POST",
headers: {
Authorization: `Basic ${creds}`,
},
})
.then((res) => res.json())
.then((body) => console.log(body));
但是,当我 运行 这段代码时,出现以下错误:
{
error: 'invalid_request',
error_description: 'Missing "code" in request.'
}
我知道如何解决这个问题。因此 Discord API 已更新,您不能再在 URL 中指定代码、授权类型和重定向 URI。您需要将其从 URL 中删除并放入正文中。
这应该可以解决问题:https://sourceb.in/BGWsbUzope