繁体   English   中英

如何使用 Github API 撤销 OAuth 认证?

[英]How to use Github API to revoke OAuth authentication?

这是我正在使用的代码,但我不断收到 403 错误作为响应。

let username = "CLIENT_ID_GOES_HERE";
let password = "SECRET_GOES_HERE";
let basicAuth = Buffer.from(`${username}:${password}`).toString('base64');

try {
    response = await axios.delete(`https://github.com/applications/${clientId}/grant`, 
    {
        headers: {
            'Authorization': `Basic ${basicAuth}`,
            'Accept': 'application/vnd.github.v3+json',
        },
        data: {
            access_token: token
        }
    });
} catch (e) {
    return {
        statusCode: 502,
        body: JSON.stringify(e)
    }
}

我已验证客户端 ID、密码和令牌都正确。 我使用的令牌是 github 在身份验证时返回的令牌。

检查是否像这里一样,令牌授权标头会更好地工作:

Authorization: `token ${process.env.GITHUB_TOKEN}`,

我想到了。 首先,我必须修改我的 axios 请求才能看到完整的错误消息。 在 try-catch 的“catch”部分中,我可以查看error.response.data的值。

我得到的错误是“必须启用 Cookie 才能使用 github”。

经过一番谷歌搜索,有同样错误的人评论说他们必须使用主机api.github.com 原来我使用的是github.com 一旦我改变了这个,错误就消失了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM