我有一個應用程序,Facebook登錄在昨天工作的很好。我切換到AWS EC2,爲今天的一些容量規劃獲得更大的服務器。getUser()現在只返回0;昨天工作嗎?
不幸的是,Facebook登錄不再有效。特別是,在從JavaScript授權中獲取access_token之後,getUser()調用僅返回0.代碼如下。
由於服務器是唯一已經改變(和IP)有一些配置與我的服務器有關,我錯過/不知道?
if(isset($_GET["access_token"])) {
$access_token = $_GET["access_token"];
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET,
));
$facebook->setAccessToken($access_token);
$user = $facebook->getUser();
if($user) {
try {
$user_profile = $facebook->api('/me');
$user_name = $user_profile["name"];
$user_email = $user_profile["email"];
$fb_uid = $user_profile["id"];
$fb_access_token = $access_token;
} catch (FacebookApiException $e) {
$status_header = 'HTTP/1.1 500 Internal Server Error';
header($status_header);
header('Content-type: application/json');
echo json_encode(array('message' => 'Facebook Exception'));
exit;
}
} else {
$status_header = 'HTTP/1.1 500 Internal Server Error';
header($status_header);
header('Content-type: application/json');
echo json_encode(array('message' => 'Facebook user does not exist', 'access_token' => $access_token, 'user' => $user, 'fb' => $facebook));
exit;
}
}
嘗試在另一個網頁瀏覽器。也許這是緩存或cookie問題? –
嘗試過三種不同的瀏覽器 –
您是否使用相同的域名? Facebook應用程序僅限於您在設置中提供的域。 –