note: Facebook SDK getUser 總是回傳 0

2013010216:10

CodeIgniter + Facebook SDK (3.x) 中
使用 
   $user = $facebook->getUser();
一直都回覆  0 

從 2012-12-31 查問題 到今天
花了一年的時間 才解決這個問題


只要在 require facebook sdk 前 加上一行 就收工:
parse_str($_SERVER['QUERY_STRING'], $_REQUEST);  # 加上這行

require $_SERVER['DOCUMENT_ROOT'] ."/facebook-php-sdk-v3.2.2/src/facebook.php";

  因  facebook PHP SDK 中都是用  $_REQUEST[] 來取得  $_GET 的相關資料
  而 $_REQUEST[] 內的資料卻早就被 CI 給清掉了


 

Note:

 

 
 

 關於 $_REQUEST

 $_REQUEST = $_POST + $_GET + $_COOKIE
 所有 $_POST、$_GET、$_COOKIE 內的資料,都可經由 $_REQUEST 來取得




 

相關參考:

 

 
 
Using Facebook PHP SDK 3 with CodeIgniter 2.1

Facebook PHP-SDK with CodeIgniter not returning $_REQUEST['signed_request']

CodeIgniter Facebook API getuser always 0