我正在使用Facebook PHP SDK 3.0
我想知道如何将用户的会话存储在数据库中,以便一旦用户提供访问权限并登录,我就可以将访问令牌存储在数据库中,并在下次使用它时使用户不会不需要再次登录。现在我使用以下代码
$facebook = new Facebook(array(
'appId' => APP_ID,
'secret' => SECRET,
'cookie' => true
));
$user = $facebook->getUser();
if(!$user)
{
$loginUrl = $facebook->getLoginUrl();
echo anchor($loginUrl,"login");
}
//print_r($_SESSION);
$user = $facebook->getUser();
if($user)
{
try
{
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
//print_r($user_profile);
}
catch (FacebookApiException $e)
{
error_log($e);
$user = null;
}
}
任何帮助表示感谢
答案 0 :(得分:0)
Facebook访问密钥会在一段时间后过期。即使你确实存储它们并且它们还没有过期,如果用户没有登录它们将无法工作。如果你想在用户离线时访问用户的Facebook帐户,你需要'offline_access'permmission。 / p>