欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

laravel cookie 无法清除,是BUG吗?

程序员文章站 2024-01-08 11:11:58
...

如图所示的cookie,我要清除ES_name这个Cookie
laravel cookie 无法清除,是BUG吗?

设置一个路由

Route::get('/admin/test', function(){
    response('')->withCookie(cookie('ES_name','',-1));
});

然后访问/admin/test后cookie还在
laravel cookie 无法清除,是BUG吗?

将路由换成

Route::get('/admin/test', function(){
    setcookie('ES_name', '', -1, '/');
});

也不行,使用Cookie的forget或者make设置还是不行,只有将地址改成/logout这样的一级路由才可以清除。
laravel的BUG,还是我没注意到什么地方需要设置呢?

回复内容:

如图所示的cookie,我要清除ES_name这个Cookie
laravel cookie 无法清除,是BUG吗?

设置一个路由

Route::get('/admin/test', function(){
    response('')->withCookie(cookie('ES_name','',-1));
});

然后访问/admin/test后cookie还在
laravel cookie 无法清除,是BUG吗?

将路由换成

Route::get('/admin/test', function(){
    setcookie('ES_name', '', -1, '/');
});

也不行,使用Cookie的forget或者make设置还是不行,只有将地址改成/logout这样的一级路由才可以清除。
laravel的BUG,还是我没注意到什么地方需要设置呢?

谢谢,按照你的方式成功了,我再研究一下。

$cookie = Cookie::forget('ES_name');
return Redirect::route('admin')->withCookie($cookie);

这个是因为设置完cookie之后需要重定向一下才会生效,因为http的response会操作cookie更改生效。

相关标签: php laravel