无法从GitHub API获取电子邮件

3
我正在尝试从GitHub获取用户的电子邮件地址,我只是在使用Postman测试该过程。我有一个具有用户和用户:email范围的令牌,并访问https://api.github.com/user可以给我用户的信息。该端点上看不到私人电子邮件,因此我还要访问 https://api.github.com/user/emails 。电子邮件端点给我返回404错误。
响应头似乎表明我拥有正确的权限:

X-Accepted-OAuth-Scopes →user, user:email

该账户已设置电子邮件。是什么导致了404错误?
更新:故障排除页面显示第三方应用程序限制可能是原因。我尝试访问的帐户属于一个组织,但组织中的“第三方应用程序访问策略”设置为“没有限制”。

可能相关:https://developer.github.com/v3/troubleshooting/#why-am-i-getting-a-404-error-on-a-repository-that-exists - TimoStaudinger
2个回答

3

我在这里遇到的主要问题是查看了错误的标题。 X-Accepted-OAuth-Scopes 是端点想要查看的范围列表。 X-OAuth-Scopes 是您实际拥有的范围列表。由于令牌创建代码中存在错误,因此该列表为空。


3

我过去几个小时一直面临类似的问题。尝试了一些 X-OAuth-Scopes 等方法。结果发现我的 https://github.com/login/oauth/authorize URL 格式不正确,并且没有必要的范围。

建议:确保您在收到访问令牌响应时同时接收所需的 scope

{"access_token":"47f31841f3b532fc4aafb3ccd924bfd0145c1c24","token_type":"bearer","scope":"user"}

在我的情况下,它是空的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接