簡體   English   中英

getUser()在Codeigniter中始終返回0

[英]getUser() always return 0 in Codeigniter

我開始使用codeigniter框架創建一個小型應用程序,並在facebook上創建應用程序后從github下載了Facebook連接,目前所有工作正常,我唯一的問題是getUser()始終返回0

我已經在application/config/創建了一個facebook.php,另外我已經在application/libraries/提取了facebook.php & base_facebook.php

這是我的代碼

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,我該如何解決這個問題呢?

base_facebook.php ,找到base_facebook.php makeRequest()方法,然后在函數內部找到以下行:

$opts = self::$CURL_OPTS;

緊隨其后,添加:

$opts[CURLOPT_SSL_VERIFYPEER] = false; 

或從這里閱讀

有時會這樣做。 我從來沒有弄清楚為什么,但是我現在總是遵循一個簡單的解決方案。

與要求getUser相反,要求在try catch塊中包裝api(/ me)。 如果失敗,則用戶未登錄/令牌無效。 如果可行,則用戶已登錄,您可以從結果數組中獲取用戶ID。

您可能正在保存呼叫,因為無論如何您都要求/ me。 只要記住嘗試捕獲錯誤的陷阱即可!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM