[英]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.