我希望有人帮助我解决这个难题。
我在我的localhost上测试了facebook login v4,它运行得很好, 起初它也在我的实时服务器上运行,但由于一个神秘的原因它不再存在。
当我在我的实时服务器(http://www.zenmony.com/test.php)上时,我点击了OAuth链接,由于某种原因,我收到503错误,并且facebook没有抛出任何异常,因此无法进行调试。
这是我的代码:
FacebookSession::setDefaultApplication( '738781846169261','*******ac965af67d8979be972655c');
$helper = new FacebookRedirectLoginHelper('http://www.zenmony.com/test.php');
//$helper = new FacebookRedirectLoginHelper('http://localhost/test.php');
if ( isset( $_SESSION ) && isset( $_SESSION['fb_token'] ) ) {
$session = new FacebookSession( $_SESSION['fb_token'] );
try {
if ( !$session->validate() ) {
$session = null;
}
} catch ( Exception $e ) {
$session = null;
print_r($e);
exit;
}
}
if ( !isset( $session ) || $session === null ) {
try {
$session = $helper->getSessionFromRedirect();
} catch( FacebookRequestException $ex ) {
print_r($ex);
exit;
} catch( Exception $ex ) {
print_r($ex);
exit;
}
}
// see if we have a session
if (isset($session))
{
// save the session
$_SESSION['fb_token'] = $session->getToken();
$session = new FacebookSession( $session->getToken() );
$request = new FacebookRequest( $session, 'GET', '/me' );
$response = $request->execute();
$graphObject = $response->getGraphObject()->asArray();
echo '<pre>' . print_r( $graphObject, 1 ) . '</pre>';
exit;
}
else
{
// show login url
$link = $helper->getLoginUrl( array( 'email', 'user_friends' ) );//&display=popup
echo "<a href=\"$link\">LINK</a>";
}
显然scipt到$session = $helper->getSessionFromRedirect();
但没有异常,我有503错误代码。
以防万一,这是我的Facebook应用程序设置:
请,需要任何帮助!