【问题标题】:How to get the details of the user using restfb.?如何使用restfb获取用户的详细信息。?
【发布时间】:2012-01-20 11:36:03
【问题描述】:

我正在尝试使用 restfb 获取我的个人资料的姓氏。但是每次用户名返回为 null。我已经拥有访问令牌和权限。我想 JSon 对象传递有一些问题。我怎么能将 json 对象传递给 javabean 并稍后检索它?

【问题讨论】:

    标签: java facebook json javabeans restfb


    【解决方案1】:

    当您提供的访问令牌没有正确的数据访问权限时,就会发生这种情况。最好的检查方法是使用 facebook graph 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'});
    

    【讨论】:

      【解决方案2】:

      这对我有用:

      FacebookClient facebookClient = new DefaultFacebookClient(MY_ACCESS_TOKEN);
      User user = facebookClient.fetchObject("me", User.class);
      out.println("Last name: " + user.getLastName());
      

      【讨论】:

      • 是的,如果用户是我,这可行!.....但是如果我想获取朋友列表中用户的详细信息,例如位置,我想我们有更改访问级别。我目前坚持更改访问令牌。虽然我改变了一次,但我想知道这本身是问题还是其他问题。我们如何更改访问令牌的权限?....
      • 这与您最初提出的问题不同。在一个问题中一个问题又一个问题地问是不公平的。
      【解决方案3】:

      这里是代码sn-p

      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”权限。

      希望这会有所帮助。

      【讨论】:

        猜你喜欢
        • 2013-01-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-30
        • 1970-01-01
        • 1970-01-01
        • 2016-04-17
        • 1970-01-01
        相关资源
        最近更新 更多