spring-social-github无法收到用户的电子邮件

时间:2015-05-01 11:41:52

标签: spring github-api spring-social

我正在使用spring-social / spring-social-github,以便通过我的Spring Boot Web应用程序中的GitHub对用户进行身份验证。

为了登录用户,我创建了以下html表单:

<form action="http://example.com/auth/github" method="POST">
 <input name="scope" value="user,gist" type="hidden">
 <button type="submit">Sign in with GitHub</button>
</form>

除了我无法获得用户电子邮件地址外,一切正常。

根据GitHub文档GitHub OAuth API user范围包括user:emailuser:follow

有什么不对?

已更新

在与GitHub支持人员交谈之后,我有更多关于此问题的信息:

问题是此库使用以下https://api.github.com/user端点以获取用户配置文件。该端点返回用户的公共电子邮件地址,用户无需指定公用电子邮件地址。因此,如果用户没有定义公共电子邮件地址,则会返回空值。

https://api.github.com/user/emails端点返回私人电子邮件地址列表,该列表应始终至少有一个地址。

是否可以扩展spring-social-github库以便为用户电子邮件地址调用https://api.github.com/user/emails端点?

现在我无法覆盖GitHubTemplate.initSubApis()以初始化我自己的UserTemplate.getUserProfile()版本,因为GitHub Template.initSubApis是私有方法..

我在GitHub上为spring-social-github can't get user email

创建了问题

0 个答案:

没有答案