向 OAuth.Access URL 发送请求后"invalid_code" Slack 错误



我正在尝试使用 Slack 验证我的应用程序。几天来它工作得很好,但现在它给我抛出了一个错误

invalid_code

const requestBody = qs.stringify({
code: code,
redirect_uri: redirect_uri,
client_id: client_id,
client_secret: client_secret
});
await axios
.post(url, requestBody, config).
then(server => console.log(server)).catch(err => console.log(err))

来自服务器的响应:{ ok: false, error: 'invalid_code' }

我得到的代码是这种格式。code=303414024726.805164905556.526d546072e9b2408e0743f42ca3bb5843553a6c3b930b1de2c1e31847b25448

我认为这是 JWT 令牌,但我不确定。

任何帮助将不胜感激。

这就是我让它工作的方式

let slackUrl = `https://slack.com/api/oauth.v2.access`;
let client_id = process.env.SLACK_CLIENT_ID;
let client_secret = process.env.SLACK_CLIENT_SECRET;
let details = {
code,
client_id,
client_secret
}
var formBody = [];
for (var property in details) {
var encodedKey = encodeURIComponent(property);
var encodedValue = encodeURIComponent(details[property]);
formBody.push(encodedKey + "=" + encodedValue);
}
formBody = formBody.join("&");
const _headers = {
'Content-Type': 'application/x-www-form-urlencoded'
};
let config = {
method: 'POST',
url: slackUrl,
data: formBody,
headers: _headers
};
let installation = await axios(config);

在它工作的地方遇到了同样的问题,然后在响应中不断收到"无效代码"错误。事实证明,如果应用/工作区已经有 OAuth 令牌,它将引发此错误。

要解决此问题,请转到Slack应用程序管理部分中的"OAuth和权限",然后撤销所有令牌(在页面底部)。在下一个请求中,您的请求将返回一个新令牌。

相关内容

最新更新