douou1872 2017-08-29 10:56
浏览 28

用户无法在Symfony2中正确注销

I'm trying to logout an user (session) when the Logout link is clicked. It seems to work when I pressed the Logout, but if I change the path, the user still alive and I don't know why.

Here's my Controller:

 /**
   * @Route("/logout", name="logout")
   */
public function logoutAction(Request $request)
{
    $helper = $this->get('security.authentication_utils');
    $this->container->get('security.token_storage')->setToken(null);
    $this->get('session')->set('id', null);
    $request->getSession()->invalidate();
    $this->get('security.token_storage')->setToken(null);


    return $this->render(
        'login.html.twig',
        array(
            'last_username' => null,
            'error'         => null,
        )
    );
}

Here's my security.yml:

security:
    # ...
    main:
        anonymous: ~
        guard:
            authenticators:
                - app.form_login_authenticator
        logout:
            path: logout
            target: logout
            invalidate_session: true

Here's the routing.yml:

app:
    resource: '@AppBundle/Controller/'
logout:
    path: /logout
  • 写回答

1条回答 默认 最新

  • doulangtiao4508 2017-08-29 11:26
    关注

    Remove the logoutAction and check if it works. This action is provided by Symfony itself. You should only set logout path in security.yml what you did.

    评论

报告相同问题?

悬赏问题

  • ¥15 写一个方法checkPerson,入参实体类Person,出参布尔值
  • ¥15 我想咨询一下路面纹理三维点云数据处理的一些问题,上传的坐标文件里是怎么对无序点进行编号的,以及xy坐标在处理的时候是进行整体模型分片处理的吗
  • ¥15 CSAPPattacklab
  • ¥15 一直显示正在等待HID—ISP
  • ¥15 Python turtle 画图
  • ¥15 关于大棚监测的pcb板设计
  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用