如何在 GitHub 三方授权中正确使用 access_token?

如何在 github 三方授权中正确使用 access_token?

github三方授权登录 access_token使用问题

在利用 github 进行三方登录时,将 access_token 放到请求头'authorization'字段可能导致获取用户令牌失败。github 授权文档说明,应使用指定格式设置 authorization 字段。

授权头格式

正确的 authorization 头格式应为:"bearer {access_token}",其中 {access_token} 为 github 颁发的令牌。

解决方法

修改代码中的'authorization'头设置,将 access_token 使用正确的格式(bearer {access_token})进行设置。修改后的代码如下:

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);
  }

通过使用正确的authorization头格式,可以解决access_token无效的问题,从而成功获取用户的令牌。

以上就是如何在 GitHub 三方授权中正确使用 access_token?的详细内容,更多请关注其它相关文章!