Laravel Auth ::注销不删除记住我的cookie

CMO*_*MOS 7 php cookies session laravel laravel-4

因此,我将会话的生命周期设置为两周,因此用户无需多次登录或注销.但是今天我注意到了一些事情,如果你注销它会破坏你的会话,但会在你的浏览器上记住我的cookie.这会导致问题,因为如果您在同一台计算机上切换足够的帐户8-10次,则会收到400错误的请求错误,因为您发送的信息过多.现在,在一个正常的生命周期中,有8到10倍的时间,但是当你的生命周期是两周时,我遇到了问题.

这是在登录和退出几次背靠背时发生的事情的屏幕截图. 在此输入图像描述如何在用户注销时删除生命周期cookie?到目前为止我已经尝试过

    Auth::logout();
    Session::flush();
Run Code Online (Sandbox Code Playgroud)

sha*_*ddy 4

看来 cookie 不会自动取消设置。但是,您可以在注销后返回重定向响应之前在控制器中执行此操作。

public function getLogout() {
    // your code here
    .....
    // Get remember_me cookie name
    $rememberMeCookie = Auth::getRecallerName();
    // Tell Laravel to forget this cookie
    $cookie = Cookie::forget($rememberMeCookie);

    return Redirect::to('/')->withCookie($cookie);
}
Run Code Online (Sandbox Code Playgroud)

记住要返回带有重定向的 cookie,否则它将无法工作。