如何使我的应用程序加载速度更快,并在后台进程中验证Facebook访问令牌

I'm using Facebook PHP SDK to make API calls for my app. Each new user use my app, script will save/update everything to database like username, sex, avatar, etc..

if ($user) {
    try {
        $me                 = $facebook->api('/me');
        $_SESSION['userid'] = $me['id'];
    }
    catch (FacebookApiException $e) {
        error_log($e);
        $user = null;
        unset($_SESSION['userid']);
        session_destroy();
    }
}

After user logged to my app, script will used only $_SESSION['userid'] to retrieve user information and every pages on my app running smooth and faster. The problem here user still can use the app if already logout from Facebook.

If I call the facebook.php file on every page and sure will be slow to load.

Question :

How do I use the Facebook PHP SDK properly? If current $_SESSION['userid'] same with Facebook access token (current logged id) don't call the facebook.php file.

Let me know.

我正在使用 Facebook PHP SDK strong> 为我的应用程序进行API调用。 每个新用户都使用我的应用程序,脚本会将所有内容保存/更新到数据库,如 username code>, sex code>, avatar code>等。 p>

  if($ user){
 try {
 $ me = $ facebook-> api('/ me'); 
 $ _SESSION ['userid'] = $ me  ['id']; 
} 
 catch(FacebookApiException $ e){
 error_log($ e); 
 $ user = null; 
 unset($ _ SESSION ['userid']); 
 session_destroy(  ); 
} 
} 
  code>  pre> 
 
 

用户登录我的应用后,脚本将仅使用 $ _ SESSION ['userid'] code> 检索用户信息,我的应用程序上的每个页面运行流畅,速度更快。 如果已经从Facebook注销,用户仍然可以使用该应用程序。 p>

如果我在每个页面上调用 facebook.php code>文件,肯定会很慢 问题: p>

如何正确使用Facebook PHP SDK? 如果当前 $ _ SESSION ['userid'] code>与Facebook访问令牌(当前记录的ID)相同,则不要调用 facebook.php code>文件。 p> \ n

请告诉我。 p> div>



 1 条回答