IOS Facebook SDK,获取用户信息

Posted

技术标签:

【中文标题】IOS Facebook SDK,获取用户信息【英文标题】:IOS Facebook SDK, fetch user info 【发布时间】:2014-09-07 12:39:18 【问题描述】:

是否可以使用 Facebook SDK 从用户 ID 中获取用户信息?一个重要的注意事项是,在应用程序发出请求之前,用户应该已经批准了应用程序及其权限。 如果可能,实现这一目标的正确方法是什么?我正在尝试使用此代码:

[FBRequestConnection startWithGraphpath:@"/100007046299250"
                             parameters:nil
                             HTTPMethod:@"GET"
                      completionHandler:^(
                                          FBRequestConnection *connection,
                                          id result,
                                          NSError *error
                                          ) 
                          /* handle the result */
                      ];

但我收到以下错误消息:

Error for request to endpoint '/100007046299250': An open FBSession must be specified for calls to this endpoint.

谢谢

【问题讨论】:

【参考方案1】:

登录验证后,您可以从活动的 FBSession 中获取详细信息,如下所示

if (FBSession.activeSession.isOpen) 

    [[FBRequest requestForMe] startWithCompletionHandler:
     ^(FBRequestConnection *connection,
       NSDictionary<FBGraphUser> *user,
       NSError *error) 
         if (!error) 
             NSString *firstName = user.first_name;
             NSString *lastName = user.last_name;
             NSString *facebookId = user.id;
             NSString *email = [user objectForKey:@"email"];
             NSString *imageUrl = [[NSString alloc] initWithFormat: @"http://graph.facebook.com/%@/picture?type=large", facebookId];
         
     ];

【讨论】:

以上是关于IOS Facebook SDK,获取用户信息的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ios 中使用 facebook sdk 4.1 获取用户信息?

如何通过 facebook SDK 在 iOS 中获取用户名和密码

iOS - Facebook SDK v.4.5.1 - 获取用户名和电子邮件

Facebook IOS SDK:检测用户何时拒绝 publish_stream 权限

使用 iOS SDK 4 提取当前 facebook 用户名

Facebook iOS SDK - 获取用户相册