【问题标题】:How do I get the Facebook user Id from the Facebook object in the iOS SDK?如何从 iOS SDK 中的 Facebook 对象获取 Facebook 用户 ID?
【发布时间】:2011-11-13 21:27:56
【问题描述】:

我看到访问令牌在 Facebook 对象中可用,但我没有看到 Facebook 用户 ID。

我可以向“我”发出图形请求以获取 Facebook ID,但我不想进行额外的 api 调用。

【问题讨论】:

    标签: ios facebook sdk


    【解决方案1】:

    现在有一种简单的方法可以做到这一点;假设您已经打开了FBSession,您可以这样做:

    [FBRequestConnection startForMeWithCompletionHandler:
      ^(FBRequestConnection *connection, id result, NSError *error)
      {
          NSLog(@"facebook result: %@", result);
      }];
    

    【讨论】:

      【解决方案2】:

      您必须调用 /me 才能获取 ID。 iOS 访问令牌现在已加密,因此您将无法从中解析用户 ID。此外,服务器端令牌也将很快使用 oauth 2.0 进行加密。

      【讨论】:

      • 例如[facebook requestWithGraphPath:@"me" andDelegate:self];
      • 不必 - 请参阅下面的答案
      【解决方案3】:

      你可以用这个:

      [[account valueForKey:@"properties"] valueForKey:@"uid"]
      

      可以通过以下方式找到电子邮件:

      [[account valueForKey:@"properties"] valueForKey:@"ACUIDisplayUsername"]
      

      其中帐户是ACAccount 当然类型

      【讨论】:

        【解决方案4】:

        可以通过[FBSession activeSession].accessTokenData.userID获取

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-05-05
          • 1970-01-01
          • 1970-01-01
          • 2011-07-17
          • 1970-01-01
          • 2015-06-09
          • 1970-01-01
          • 2013-06-22
          相关资源
          最近更新 更多