0

我开始使用 codeigniter 框架创建一个小型应用程序,并且在 facebook 中创建我的应用程序后,我已经从 github 下载了 Facebook connect,此时一切正常,我唯一的问题是 getUser() 总是返回 0

我在里面创建了一个 facebook.php,我也在里面application/config/ 提取了facebook.php & base_facebook.phpapplication/libraries/

这是我的代码

class Welcome extends CI_Controller {

    private $data = array();



    public function index() {
        $this->data['loginUrl'] = $this->facebook->getLoginUrl();
        $this->data['userId'] = $this->facebook->getUser();
        $this->load->view('welcome_message', $this->data);
    }

}

在自动加载中我有:

$autoload['libraries'] = array('database','session','facebook'); 

那么为什么getUser()返回 0 以及如何解决这个问题 thx

4

2 回答 2

3

on base_facebook.php,找到makeRequest()方法,然后在函数内部找到这一行:

$opts = self::$CURL_OPTS;

紧随其后,添加:

$opts[CURLOPT_SSL_VERIFYPEER] = false; 

或从这里阅读

于 2012-09-06T17:00:35.890 回答
0

它有时会这样做。我从来没有弄清楚为什么,但我现在总是遵循一个简单的解决方案。

与请求 getUser 不同,请求包含在 try catch 块中的 api(/me)。如果失败,则用户未登录/令牌无效。如果它有效,则用户已登录,并且您从结果数组中获取用户 ID。

你可能正在保存一个电话,因为无论如何你都会要求 /me。请记住用于错误捕获的 try catch!

于 2012-08-22T08:41:49.040 回答