我目前正在尝试构建一个身份验证应用程序,但是当尝试从提供的代码不一致中获取刷新令牌时,我不断收到
Invalid "code" in request
。
这是我的请求的快照:
const response = await fetch(`https://discord.com/api/oauth2/token`, {
method: "POST",
headers: {
"Content-Type": "application/x-www-form-urlencoded"
},
body: new URLSearchParams({
grant_type: "authorization_code",
code: code,
redirect_uri: redirectURI,
client_id: process.env.DISCORD_CLIENT_ID as string,
client_secret: process.env.DISCORD_CLIENT_SECRET as string,
scope: 'identify email'
}).toString()
})
我使用完全相同的范围、重定向 uri 和代码。我已确保我的凭据正确并且返回的 JSON 为
{ error: 'invalid_grant', error_description: 'Invalid "code" in request.' }
这个问题有什么解决办法吗?非常感谢。
您的
auhorization_code
有错字。应该是authorization_code
。
我不确定是否是同样的问题,但对我来说,问题是在我的代码中总是使用格式错误的调用,而我第二次尝试使用该代码时总是:
{
"error": "invalid_grant",
"error_description": "Invalid \"code\" in request."
}
请确保您只使用该代码一次! 这可能是问题所在吗?