Cakephp 2.1 Facebook Connect和Auth

时间:2012-07-24 14:30:36

标签: facebook authentication cakephp-2.1

我在我的应用程序中使用以下插件来让facebook连接使用auth。

https://github.com/webtechnick/CakePHP-Facebook-Plugin

问题是我想手动将用户数据保存到用户表中。

所以我正在尝试这样

public function beforeFacebookSave(){
//$this->Auth->autoRedirect = false;
debug($this->Connect->user('email'));
$this->Connect->authUser['User']['email'] = $this->Connect->user('email');
$this->Connect->authUser['User']['username'] = $this->Connect->user('username');
//Must return true or will not save.
$this->redirect(array('controller' => 'users', 'action' => 'beforefbsave', '?' => array('param1' => $this->Connect->user('email')))); 
//return true;

}

重定向进入循环并出现错误

The page isn't redirecting properly

这是一种正确的方法,还是采用其他方法来完成这项工作?

1 个答案:

答案 0 :(得分:0)

页面上有一个文档: https://github.com/webtechnick/CakePHP-Facebook-Plugin

beforeFacebookSave处理用户保存到users表中。如果返回false,则会产生创建。

//Add an email field to be saved along with creation.
function beforeFacebookSave(){
    $this->Connect->authUser['User']['email'] = $this->Connect->user('email');
    return true; //Must return true or will not save.
}

所以如果我是你,我会看下一部分:

beforeFacebookLogin在将用户登录到Auth。

之前处理用户
function beforeFacebookLogin($user){
    //Logic to happen before a facebook login
}

而不是重定向使用模型中的直接函数。