以下是注册码:
FacebookSession::setDefaultApplication('x','x');
$helper = new FacebookRedirectLoginHelper('http://xx.com/en/auth/facebooklogin');
$loginUrl = $helper->getLoginUrl(array(
'scope' => 'email'
));
$redirector = Zend_Controller_Action_HelperBroker::getStaticHelper ( 'Redirector' );
$redirector->gotoUrl ( $loginUrl )->redirectAndExit ();
以下是重定向代码:
FacebookSession::setDefaultApplication('x','x');
$helper = new FacebookRedirectLoginHelper('http://xx.com/en/auth/facebooklogin');
$session = null;
try {
$session = $helper->getSessionFromRedirect();
Core::session('FacebookAuthSession')->sessionObject = $session;
} catch(FacebookRequestException $ex) {
} catch(\Exception $ex) {
}
$request = new FacebookRequest($session, 'GET', '/me');
$response = $request->execute();
$graphObject = $response->getGraphObject();
我已经读过使用getLoginUrl
函数更改状态但是它被用于与重定向代码不同的区域,因此它不会被多次使用。
这是错误:
可捕获的致命错误:传递给Facebook的论点1 \ FacebookRequest :: __ construct()必须是Facebook \ FacebookSession的一个实例,null给出
应该注意的是,facebook注册以及facebook登录都是以注册码开始的。