我如何在我的Facebook應用程序維護會話Cookie? 目前我所有的網頁中,有下面的代碼:Facebook的PHP SDK的會話邏輯
$facebook = new Facebook(array(
'appId' => 'myid',
'secret' => 'mysecret',
'cookie' => true,
));
$session = $facebook->getSession();
$me = null;
// Session based API call.
if ($session) {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
}
}
// login or logout url will be needed depending on current user state.
if ($me) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl(array('canvas' => 1,
'fbconnect' => 0,
'req_perms' => 'publish_stream,email',
'next' => 'register.php',
'cancel_url' => 'http://www.facebook.com/apps/application.php?id=MYAPPID&perms'));
}
if (!$me){ print("<html><head>");
print("<script type=\"text/javascript\">function redirect(){ top.location.href = \"");
print($loginUrl);
print("\"; }</script></head>");
print("<body onload=\"redirect();\">Please wait...</body></html>"); exit(); }
這是錯誤的,因爲我明白,每次用戶導航到不同的頁面在我的畫布我得到一個新的會話。我需要使用請求嗎?如果是的話,我該如何做到這一點?
但是當他們瀏覽到不同的頁面 – Tom 2011-05-05 12:54:11
增加了更多的我的答案,這可能幫助(用戶丟失會話: – 2011-05-05 13:00:46
感謝在P3P策略標題的信息這已經爲不必要的壓力一天造成的我們。 – 2011-11-17 05:30:12