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

ale*_*oid 5 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>
Run Code Online (Sandbox Code Playgroud)

一切正常,但我无法获得用户的电子邮件地址.

根据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创建了一个问题,无法收到用户的电子邮件