我正在尝试使用restfb.But获取我的个人资料的姓氏,但每次将用户名返回为null。我已经拥有了访问令牌和权限。我想JSon对象的一些问题pass.how我可以将json对象传递给javabean然后检索它?
答案 0 :(得分:3)
当您提供的访问令牌没有访问数据的正确权限时,就会发生这种情况。检查这个的最佳方法是使用facebook图形API接口;注意到版本。 https://developers.facebook.com/tools/explorer/145634995501895/?method=GET&path=me&version=v2.4
FacebookClient fbClient = new DefaultFacebookClient(accessToken, Version.VERSION_2_4);
User me = fbClient.fetchObject("me", User.class, Parameter.with("fields", "email,first_name,last_name,gender"));
注意:您的FB.login
函数必须包含您要访问的字段的正确范围。
FB.login(function(response) {
...
}, {scope: 'email'});
答案 1 :(得分:0)
这对我有用:
FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN);
User user = facebookClient.fetchObject("me", User.class);
out.println("Last name: " + user.getLastName());
答案 2 :(得分:0)
以下是代码段
FacebookClient facebookClient = new DefaultFacebookClient("register a facebook application with required permissions, get that application token and paste here");
User user = facebookClient.fetchObject("me", User.class);
Connection<User> myFriends = facebookClient.fetchConnection("me/friends", User.class);
for(User friend:myFriends.getData())
{
Connection<Page> myMovies = facebookClient.fetchConnection(friend.getId() + "/movies", Page.class);
content = content + "Name: " + friend.getName();
for(Page page:myMovies.getData())
{
content = content + "\n" + "Movies: " + page.getName() + "\n";
}
}
在此示例中,您的应用程序需要“friends_likes”权限。
希望这有帮助。