Heim  >  Artikel  >  Backend-Entwicklung  >  laravel cookie 无法清除,是BUG吗?

laravel cookie 无法清除,是BUG吗?

WBOY
WBOYOriginal
2016-07-06 13:53:141014Durchsuche

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

设置一个路由

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

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

将路由换成

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

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

回复内容:

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

设置一个路由

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

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

将路由换成

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

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

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

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

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn