Facebook iOS API:如何获取公开个人资料网址

时间:2016-06-23 06:43:56

标签: ios facebook facebook-graph-api fbsdk

我使用FBSDK来获取有关用户的基本信息,如下所示:

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me"
                                   parameters:@{@"fields" : @"id, about, birthday, email, first_name,last_name, link, middle_name, name, name_format, picture"}
                                   HTTPMethod:@"GET"]
 startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
     if ([error.userInfo[FBSDKGraphRequestErrorGraphErrorCode] isEqual:@200]) {

         NSLog(@"error getting profile info");


     } else {

         NSLog(@"success getting facebook profile %@", result);

     }
 }];

然而,link字段返回如下值:https://www.facebook.com/app_scoped_user_id/283581333995846/当我在浏览器中打开此链接时,它要求我在查看此配置文件之前登录Facebook,但是当我打开另一个浏览器时(在我的桌面计算机上)并登录此配置文件,链接将是https://www.facebook.com/profile.php?id=100012619704737,如果我将此链接提供给任何人,他们可以打开它而无需登录Facebook查看个人资料。

我的问题是:

  1. 这个数字代表什么:100012619704737?

  2. 如何获取可在浏览器上打开而无需登录Facebook的Facebook个人资料网址(https://www.facebook.com/profile.php?id=100012619704737)?

  3. P.S。由于隐私原因,上述两个数字均已更改

1 个答案:

答案 0 :(得分:1)

该数字代表"真实"用户的个人资料ID。您不应该将应用范围ID转换为真实ID。可能有" hacks"虽然。

如果您需要将应用用户链接到Facebook个人资料,请使用["1223","Reliance Communications Ltd","91","INDIA"," Hapur Ghaziabad"]] 链接让用户登录。