0

我有一个非常奇怪的问题:有时(但不是每次!)当我尝试获取当前用户的 Facebook ID 时,我得到“1”;例如:$config = array();

$config["appId"] = API_KEY;
$config["secret"] = SECRET;
$facebook=  new Facebook($config);
$user=$facbook->getUser();
echo $user['id'];//returns 1;   

显然 - 这不是真正的用户 ID。当我检查访问令牌是否仍然有效时 - 我发现它仍然有效。此外,即使我使用以下命令强制用户再次登录:

FB.login(function(response) {
    if (response.authResponse) {
        top.location.href="<?php echo HOME_URL;?>"
    }, {scope: 'publish_stream'});

仍然得到相同的结果。知道可能是什么问题吗?

4

1 回答 1

0

您应该只从 FB 取回 ID:

$user_id = $facbook->getUser();
echo $user_id;

您稍后必须查询 API 以获取用户配置文件(这就是您正在做的事情):

$user_profile = $facebook->api('/me');

参考:

于 2012-10-28T18:57:08.307 回答