【发布时间】:2013-01-26 06:34:06
【问题描述】:
我知道 symfony2 安全控制器默认可以执行注销操作。 当我们像这样给出路径 Logout 时,它工作正常。
但是当注销发生时我需要执行一些操作,例如将一些数据存储到数据库中。那么我该如何实现呢。
如果有任何想法,请帮助我。
【问题讨论】:
-
你见过this。
我知道 symfony2 安全控制器默认可以执行注销操作。 当我们像这样给出路径 Logout 时,它工作正常。
但是当注销发生时我需要执行一些操作,例如将一些数据存储到数据库中。那么我该如何实现呢。
如果有任何想法,请帮助我。
【问题讨论】:
您需要在 routing.yml 或注释中为注销操作定义新规则(由您决定)
logout_user:
pattern: /logoutUser
defaults: { _controller: YourBundle:YourController:logout }
那么它只是像这样为这个动作编写代码:
public function logoutAction() {
//do whatever you want here
//clear the token, cancel session and redirect
$this->get('security.context')->setToken(null);
$this->get('request')->getSession()->invalidate();
return $this->redirect($this->generateUrl('login'));
}
还有一种方法可以完成 tesmojones 提出的工作 这里symfony2 logout
【讨论】: