我有一个检查用户是否登录Facebook的功能。它工作正常,但过了一段时间(如10分钟)没有做任何事情(打开页面但没有在其中执行任何操作),如果我刷新页面,令牌过期并且消息会捕获异常:< / p>
An active access token must be used to query information about the current user.
但是如果我第二次再次刷新页面,那么函数再次执行,那么我得到一个新的访问令牌,没有问题。这是为什么?为什么我在第一次刷新时没有获得有效的令牌?而且,为什么令牌很快就会到期(10分钟)?
这是我正在谈论的函数的代码:
$_FB = new Facebook(array(
'appId' => 'APP_ID',
'secret' => 'APP_SECRET',
));
$userFID = $_FB->getUser();
try {
$user_profile = $_FB->api('/me');
} catch (FacebookApiException $e) {
$userFID = 0;
echo "Error: " . $e->getMessage();
}
有人知道我做错了什么吗? 谢谢!