如何正确使用 Access Token 进行 GitHub 三方授权登录?
github 三方授权登录:access token 使用指南
在使用 github 进行第三方授权登录时,将 access token 放入请求头的“authorization”字段中可能会遇到无法成功获取用户令牌的问题。
根据官方文档,github 授权头部的正确格式应为:
authorization: bearer {access_token}
即 access token 应以 "bearer " 前缀。
因此,在您的代码中,您需要将以下代码:
headers: { 'authorization': accesstoken }
修改为:
headers: { 'authorization': "bearer " + accesstoken }
修改后的代码如下:
private async getGithubUserInfo(accessToken) { const {ctx} = this; // 使用accessToken去获取资源 GET https://api.github.com/user const baseURL = 'https://api.github.com/user'; let res = await ctx.curl(baseURL, { method: 'GET', headers: { 'Authorization': "Bearer " + accessToken } }) console.log(res); }
这样,您即可通过使用正确的授权头部格式成功获取用户令牌。