2016-10-03 63 views
3

如何删除Laravel中的Cookie。这是行不通的:Laravel删除/忘记Cookie不起作用

public function logout(Request $request) 
{ 

    $this->guard()->logout(); 

    $request->session()->flush(); 

    $request->session()->regenerate(); 

    Cookie::queue(Cookie::forget('cavpad')); 
    Cookie::queue(Cookie::forget('cavuser')); 

    return redirect('/'); 

}

这工作,但似乎是错误的方式做到这一点:

Cookie::queue(Cookie::make('cavpad', '', 0, null, env('APP_DOMAIN'))); 
Cookie::queue(Cookie::make('cavuser', '', 0, null, env('APP_DOMAIN'))); 

为什么第一种方法不行,但第二种方式一样。 ..顺便说一句,与环境无关()...只是补充说,在那里...

+0

它应该是'曲奇::忘记()''里面的Cookie ::队列()' – Ohgodwhy

+0

什么是你的cookie的驱动程序? – Ohgodwhy

回答

0

你可以通过使用我提供的代码,它几乎相同,但我知道这这样做的方式适用于我。但是,如果你需要的内联做,这也可能为你工作:

Cookie::queue(
    Cookie::forget('cookieName') 
); 

这是我认为它应该做的事。

+0

是的,它不工作的原因.... – no1uknow

0

尝试重定向这样的:

return redirect('/')->withCookie(Cookie::forget('cavpad'))->withCookie(Cookie::forget('cavuser'));