Facebook登录CodeIgniter后,页面不会重定向

时间:2014-11-24 20:31:17

标签: php facebook codeigniter facebook-graph-api

我正在使用此代码(codeigniter-facebook-php-sdk-v4)将我的控制器连接到Facebook登录。 Mycontroller

public function index() {
    //load views
    $this->load->view('pages/header');
    $this->load->view('pages/index'); //contains a href of mycontroller/facebook_login
    $this->load->view('pages/footer');
}

public function facebook_login() {
    $fb_data = $this->lib_facebook->facebook();

    if (isset($fb_data['me'])) {
         //save fb user data
    }
}

之后,数据被保存,浏览器仍然是mycontroller/facebook_login页面。我希望它将其重定向到index页面。

1 个答案:

答案 0 :(得分:0)

  

的Facebook \ FacebookRedirectLoginHelper

     

如果您的网络应用在后端使用Facebook登录,则需要   将访问者重定向到Facebook上的URL以启动登录   请求。 Facebook然后将用户重定向到您的应用程序回调URL,   提供会话数据。该助手类将生成登录URL   为您,并可以处理和验证来自Facebook的数据,   返回FacebookSession取得成功。

请记住设置回调网址时的情况?是的,在您提出请求之前更改它。

// change the url before you make the request
$desired_url = 'url_desired'; // set the url you want the user to be redirected after logging in
$helper = new FacebookRedirectLoginHelper($desired_url); 

然后你可以简单地使用

echo '<a href="' . $helper->getLoginUrl() . '">Login with Facebook</a>';