我想在服务器端使用 Facebook。因此我使用 Facebook SDK API。我使用教程快速启动并添加了 curl 选项来解决经常出现的问题。
但是 getUser 再次返回 0。我做了 print_r($ SESSION)。并看到有 fb _[FACEBOOK_APP_ID]_state var。Facebook 将我重定向回我的页面,没有错误,但 getUser 为 0。
define('FACEBOOK_APP_ID',"387123884707291");
define('FACEBOOK_SECRET',"REMOVED");
$user = null;
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET,
'cookie' => true
));
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYPEER] = 0;
Facebook::$CURL_OPTS[CURLOPT_SSL_VERIFYHOST] = 0;
Facebook::$CURL_OPTS[CURLOPT_CONNECTTIMEOUT] = 30;
$user = $facebook->getUser();
print_r($_SESSION); //here line!
if($user == 0) {
$login_url = $facebook->getLoginUrl(array('scope' => 'email'));
$content = "<script> top.location.href='".$login_url."'</script>";
echo "bb";
} else
echo "logined";
die;