【问题标题】:How to get a facebook users friends and profile picture of friends using graph api v2.0?如何使用graph api v2.0获取facebook用户好友和好友头像?
【发布时间】:2014-05-04 14:19:51
【问题描述】:

Facebook 最近(2014 年 4 月 30 日)将其图形 API 更新到 v2.0。现在获取 facebook 朋友和他们的个人资料图片的标准 api 调用是什么? (我/朋友不工作,因为我想要所有的朋友而不是使用该应用程序的朋友)

【问题讨论】:

    标签: ios facebook facebook-graph-api


    【解决方案1】:

    在 v2.0 的 Graph API 中,/me/friends 仅包含用户的同时登录应用的好友。

    要在标签和邀请的情况下使用朋友获取非应用,您可以使用新的/me/taggable_friends/me/invitable_friends端点。

    更多细节在这里:Facebook Graph Api v2.0+ - /me/friends returns empty, or only friends who also use my app 和这里:Get facebook friends with Graph API v.2.0

    【讨论】:

    • 我已经成功使用me/taggable_friends获取好友列表。但是当我尝试获取朋友的 id 时,它会给我一个特定于应用程序的 id。所以我无法通过使用 /picture 之类的东西来获取朋友的个人资料图片。有什么解决办法吗?
    • Taggable Friends API 返回您需要的关于非应用用户的所有信息。这包括:1/ 标记或提及发布到 Facebook 的故事中的人时可以使用的令牌 2/ 人的姓名,以便您可以构建标记选择器 UI 3/ 该人的个人资料图片的 URL
    【解决方案2】:

    大家都晚了,但这个信息不在那里。

    以下是获取 taggable_friends Facebook 个人资料图片的方法(也很大!)

     [FBRequestConnection startWithGraphPath:@"/me/taggable_friends?fields=id,name,picture.type(large)"
                                 parameters:nil
                                 HTTPMethod:@"GET"
                          completionHandler:^(
                                              FBRequestConnection *connection,
                                              id result,
                                              NSError *error
                                              ) {
                              NSArray* friends = [result objectForKey:@"data"];
                              NSLog(@"Found: %i friends", friends.count);
                             for (NSDictionary<FBGraphUser>* friend in friends) {
    
    
    
                                 NSDictionary *pictureData = [[friend objectForKey:@"picture"] objectForKey:@"data"];
    
                                 NSString *imageUrl = [pictureData objectForKey:@"url"];
    
                                 NSLog(@"Facebook profile image url %@", imageUrl);
    
    
    
                              }
    
    
    
    
                          }];
    

    这会检索所有 Facebook 好友,并为每个好友解析 imageURL。您可以解析可标记链接的“朋友”节点(仅当您从应用程序标记朋友时才有效)及其用户名。

    【讨论】:

      【解决方案3】:
          Next code will provide the taggable_friends with Url pictures at wanted sizes.
      
      Session session = Session.getActiveSession();
          Bundle params = new Bundle();
          params.putString("fields", "picture.width(" + size.x + ").height(" + size.y + ")");
          Request request = new Request(session, "/me/taggable_friends", params, HttpMethod.GET, new Request.Callback() {
              public void onCompleted(Response response) {
      
      
              }
          });
          Request.executeBatchAsync(request);
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-25
        • 1970-01-01
        • 1970-01-01
        • 2012-03-20
        相关资源
        最近更新 更多