2

我正在尝试将 facebook 登录集成到我的网站中。我面临一个奇怪的问题,其中用户几乎每 10 分钟从我的网站上退出一次,尽管他仍然登录到 facebook:

我对错误的原因没有太多线索,但这可能会有所帮助。我的 javascript 代码中有一些错误,因为在那段时间里,javascript 没有被执行,我不知何故保持登录状态。

为了实现facebook登录,我在php中使用geloginUrl和getLogoutUrl函数,我还添加了一些代码以在javascript中发布在朋友的墙上等。

据我所知,这就是所有相关信息。如果可能需要任何其他详细信息才能正确回答此问题,请告诉我。

这就是我的代码的样子:

  $user = $facebook->getUser();

  if ($user) {
       try {
          $user_profile = $facebook->api('/me');
       } catch (FacebookApiException $e) {
          $user = 0;
       }
  } 

  if ($user) { 
    setcookie('uid', $user, time()+36000, '/', 'mywebsite.com');
    setcookie('uname', $user_profile['name'], time()+36000, '/', 'mywebsite.com');
  } else {
    setcookie('uid', $user, time()+36000, '/', 'mywebsite.com');
    setcookie('uname', $user_profile['name'], time()+36000, '/', 'mywebsite.com');
  }

  $loginUrlParams = array(
    'scope' => 'email,user_activities,friends_activities,friends_interests,user_interests',
    'redirect_uri' => 'http://mywebsite.com/getfbToken.php'
  );

  $loginUrl = "";
  $logoutUrl = "";
  $logoutUrlParams = array( 'next' => 'http://mywebsite.com/logout.php' );
  // getting login url from facebook if user is invalid
  if (!$user)
    $loginUrl = $facebook->getLoginUrl($loginUrlParams);
  else
    $logoutUrl = $facebook->getLogoutUrl($logoutUrlParams);
4

0 回答 0