在Facebook个人资料中没有返回用户名

Jam*_*mes 2 facebook username facebook-graph-api spring-social spring-social-facebook

我刚刚在developers.facebook.com上重新注册了我们的facebook应用程序,获得了app id和secret.到现在为止还挺好.

现在,当我使用新的appId和appSecret获取用户配置文件时,用户名字段为空,其中像lastName等其他字段被设置(我UserProfile userProfile = connection.fetchUserProfile()使用spring-social-facebook).

我确定以前用旧的appId填写了用户名字段.我不知道为什么用户名现在不再由facebook发送了.如果用户登录Facebook,我们需要用户名来本地存储用户.

这是我缺少的Facebook应用程序设置页面上的设置吗?或者在Facebook方面做了一些改变?

Cra*_*lls 6

如果您从4月30日开始在Facebook注册您的应用程序,那么您就是在与Facebook的v2.0 API进行对抗(没有选择...... Facebook会对4月30日之后注册的应用程序强制执行此操作).在v2.0中,没有用户名.它根本不可用了.

4月30日之前注册的应用将默认为v1.0,但您可以请求v2.0.然而,就目前而言,Spring Social Facebook是针对v1.0进行编码的.如果你尝试使用它来对抗v2.0,那么大多数事情仍然可以工作,但有些事情不会(例如用户名.另外,获取朋友列表只会返回同样授权相同应用程序的朋友.)

我正在努力更新Spring Social Facebook的API以对抗v2.0,但这是一项非常重要的任务.不过,我希望尽快完成这项工作.