3

我正在使用 cakephp 2.1 并使用来自 https://github.com/webtechnick/CakePHP-Facebook-Plugin的 facebook 插件

我正在使用 facebook 登录助手,如下所示

$this->facebook->login(array('redirect' => 'facebook_login', 'label' => 'sign in via facebook', 'id' => 'fb-login')).

和注销助手如下

$this->Facebook->logout(array('redirect' => array('controller' => 'users', 'action' => 'logout'), 'label' => 'Logout')).

在注销操作中,我编写了此代码。

$this->Auth->logout();
$this->redirect(Controller::referer());

但问题是当新用户来登录时,它会显示旧的登录用户数据。所以请帮我弄清楚。

4

3 回答 3

2

要删除 cookie,您需要设置完全相同的 cookie(域、路径、名称),但过期时间已过 - 当客户端读取时,这将导致 cookie 不会与下一个请求一起发送。

检查这个网址https://github.com/facebook/facebook-php-sdk/blob/master/src/base_facebook.php#L132

于 2012-12-14T05:32:16.710 回答
2

在下面更改:

$this->Auth->注销(); $this->redirect(Controller::referer());

 $this->redirect($this->Auth->logout()):
于 2012-12-14T05:35:37.150 回答
1

我已经在我的应用程序中多次使用 webtechnick facebook 插件,但登录和注销从来没有按照我想要的方式工作。所以现在我正在开发自己的插件,它使用服务器端连接,可以被视为 CakePHP 中的 Auth 对象。

就像$this->Auth->login()和一样简单$this->Auth->logout()

你可以在这里查看:http: //marianofino.github.com/Facebook-Plugin-for-CakePHP/

于 2013-01-11T21:22:46.470 回答