我们正在构建一个项目,客户通过我们的登陆页面的重定向链接登录 Github,我们会收到一个代码,我们可以用它交换令牌。但是,我们希望使用该特定用户的 Github 用户名向 Github API 发出请求(以检索其已解决的问题)。
我们已经记录了请求对象、响应对象和标头,但用户名不存在。用户名必须位于某处,但我们找不到它。如果有人有通过外部授权检索用户名的经验,我们将不胜感激您的帮助。
您可以对 github API、路径执行 get 请求
/user?access_token=ACCESS_TOKEN
其中 ACCESS_TOKEN 是您想要其详细信息的用户的访问令牌。
响应默认为 JSON 对象,其中包含键“login”,其值为用户的用户名。
在 Node.js 中,您可以使用以下选项执行 get 请求:
var options = {
host: 'api.github.com',
path: '/user?access_token=' + accessToken,
headers: {
'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/45.0.2454.85 Safari/537.36'
}
};
标头中的用户代理字符串对于 github 请求是必需的。
请参阅此链接以获取更多信息以及来自该端点的示例响应。