我正在使用 Codeigniter 并包含 Facebook 库来实现 Facebook 身份验证。我将库自动加载为:
$autoload['libraries'] = array('database', 'session', 'facebook_lib', 'aescryption');
facebook_lib.php 库正在调用 facebook.php(它又调用 base_facebook.php)。现在,这使网站变得非常缓慢。在我的本地主机上加载页面大约需要 4-8 秒。我以前不知道这一点。页面加载速度非常慢。然后我分析了应用程序,发现即使我只是调用一个空白页面,它也确实很慢。然后我认为发生了其他事情,我的第一个想法是自动加载配置。如果我删除 'facebook_lib' 库,那么页面会立即加载。
有什么想法可以在这里做吗?有没有人遇到过类似的问题?
谢谢。
更新:
这是我在 facebook 库中的代码: $this->ci =& get_instance();
    // Create our Application instance
    //(replace this with your appId and secret).
    $this->ci->load->file(APPPATH.'/third_party/facebook.php');
    $this->data['facebook'] = new Facebook(array(
                                            'appId'  => $this->ci->config->item('fb_app_id'),
                                            'secret' => $this->ci->config->item('fb_secret_key')));
    $this->data['fb_user'] = $this->data['facebook']->getUser();
    if ($this->data['fb_user']) {           
     try {
            $this->data['$user_profile']=$this->data['facebook']->api('/me');
            $this->ci->load->model('login_signup_model');
            $this->ci->login_signup_model->storeFBUser($this->data['$user_profile']['id']);
            return true;
        } catch (FacebookApiException $e){
            error_log($e);
            $this->data['fb_user']=null;
        }
     }