当php登录php sdk时,getuser函数在浏览器中第一次返回0

时间:2012-05-14 13:58:46

标签: php facebook facebook-php-sdk

我第一次在浏览器中登录facebook。我调用函数getuser进行检查,但我不能得到它只返回零。它发生在我第一次打开浏览器时。

$facebook = new Facebook(array(
      'appId'  => 'xxxxx',
      'secret' => 'xxxxxxx',
      'cookie' => true
    ));

$here = 'https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
    $next = preg_replace('~#.*$~s', '', $here);
    $next = preg_replace('~\?.*$~s', '', $next);
    $next = preg_replace('~/[^/]*$~s', '/login.php', $next);
$params=array(
      'scope' => 'publish_stream,user_birthday,read_stream,read_friendlists,user_about_me,email,user_checkins,friends_checkins,publish_checkins,publish_actions',
      'redirect_uri' => $next
    ); 
 $loginUrl = $facebook->getLoginUrl($params);

1 个答案:

答案 0 :(得分:0)

SDK会在会话中存储facebook用户ID和访问令牌,因此除非您清除cookie或重新打开浏览器,否则getUser将不会在auth之后返回0。

您也可以致电destroySession()删除SDK中的Cookie。