有没有办法可以检索用户ID?我知道如何从getGraphObjec获取id但该id不是我想要的id。我找到了像http://graph.facebook.com/userid这样的东西。我想要那个id,例如我从getGraphObject生成“10205575645933169”,但我想在http://graph.facebook.com/1313375997中使用“1313375997”。我甚至都不知道这是否可能,但如果是的话,是否有人知道这样做的方法?谢谢
<?php
session_start();
require_once 'vendor/autoload.php';
Facebook\FacebookSession::setDefaultApplication('856997051006897','8e034c9c2bb159f9eba8f251dcc68eba');
$facebook = new Facebook\FacebookRedirectLoginHelper('http://localhost/FacebookLogin/index.php');
try {
if($session = $facebook->getSessionFromRedirect()){
$_SESSION['facebook'] = $session->getToken();
header('Location: index.php');
}
if(isset($_SESSION['facebook'])) {
$session = new Facebook\FacebookSession($_SESSION['facebook']);
$request = new Facebook\FacebookRequest($session, 'GET', '/me');
$request = $request->execute();
$user = $request->getGraphObject()->asArray();
}
} catch(Facebook\FacebookRequestException $e) {
// Facebook error
} catch(Exception $e) {
// local error
}
我用$ user ['id']来称呼它;在我的代码中。
答案 0 :(得分:1)
由于v2.0不再能够检索“用户名”或“真实/全局ID”。您只能获得用户的真实姓名和App Scoped ID。使用用户名,您可以获得用户的“真实”ID,因此,如果仍然可以获取用户名或真实/全局ID,则使用App Scoped ID的整个概念将无效。
查看更改日志,了解有关最近更改的更多信息:https://developers.facebook.com/docs/apps/changelog
答案 1 :(得分:0)
图形API返回APP SCOPED USER ID。您可以在代码中使用该ID。它仍然是同一个用户。 你可以做像
这样的请求$request = new Facebook\FacebookRequest($session, 'GET', '/'.$app_scoped_user_id);
我曾经遇到过同样的问题。您可以在此处查看Graph API and PHP SDK returns different results