2015-12-09 20 views
1

我想實現使用Spring社會Facebook的OAuth的,因爲它的一部分我打電話以下URI春天Facebook的社會OAuth的 - 越來越不符合API v2.5版本的所有數據

https://www.facebook.com/v1.0/dialog/oauth?client_id=12345678900&response_type=code&redirect_uri=http://some_uri.com&success_url=some_uri.com&error_url=some_uri.com&scope=email%2C+user_birthday

我也得到令牌就好了。 然而,當我嘗試

Facebook facebookTemplate = new FacebookTemplate(accessToken); 
FacebookProfile facebookProfile = facebook.userOperations().getUserProfile(); 

,API返回只有在情況下,所有的數據(電子郵件,鏈接等),充分Facebook的個人主頁,如果我已經配置我的應用程序使用開發者控制檯的Facebook應用程序,它使用API 2.3。 至今爲止,控制檯中所有新創建的應用程序使用的最新版本的api爲2.5。 如果我使用api 2.5新創建的應用程序,它不會返回所有數據 - 基本上只有用戶名和ID存在。 我使用Spring社交版本1.1.1.RELEASE和Spring社會1.1.0.RELEASE

我可以指定一些參數或更新庫或代碼,以便使用新版本創建的應用程序使用api版本2.5 ?

回答

2

Spring Social Facebook v2.0.3.RELEASE以Graph API v2.5爲目標,並且應該包含您正在查找的字段。

0

您錯過了範圍。默認Spring-Social-Facebook的範圍是public_profile。它只會有一些有限的信息。

改爲使用「電子郵件範圍」。請參閱此鏈接 Facebook oauth scopes

您可以通過這種方式改變的範圍facebookConnectionFactory.setScope("email");