Как получить идентификатор пользователя Facebook из объекта Facebook в SDK iOS?

Я вижу, что токен доступа доступен в объекте Facebook, но я не вижу идентификатор пользователя Facebook.

Я мог бы сделать запрос графа "я", чтобы получить идентификатор Facebook, но я бы предпочел не делать дополнительный вызов api.

Ответ 1

Вам нужно позвонить/мне, чтобы получить идентификатор. Точки доступа iOS теперь зашифрованы и, следовательно, вы не сможете проанализировать идентификатор пользователя из него. Кроме того, токены на стороне сервера будут также зашифрованы с помощью oauth 2.0 в ближайшее время.

Ответ 2

В наши дни есть простой способ получить это; если у вас уже есть FBSession open, вы можете просто сделать это:

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

Ответ 3

Вы можете просто использовать это:

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

E-mail можно найти по следующему адресу:

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

где учетная запись ACAccount тип курса

Ответ 4

Можно получить его с помощью [FBSession activeSession].accessTokenData.userID