我正在尝试将 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);