laravel什么时候这样设置cookie?
本文介绍了laravel什么时候这样设置cookie?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
我在控制器里面这样设置cookie后视图就显示不出来了 因为return后面的代码就不执行了 为什么不都用Cookie::queue
呢?那么什么场合才会用response这种方式设置cookie呢?这种方式设置cookie有什么用处呢?
return response('')->withCookie('name','aaa',10);
return view('test');
解决方案
第一个问题:我在控制器里面这样设置cookie
后视图就显示不出来了?
答:第一个return
执行返回response
响应,第二个return
是不会执行的;第一个return
就是普通的响应,不是视图响应,所以没有显示视图;
第二个问题:为什么不都用Cookie::queue
呢?
答:Cookie::queue
是设置全局cookie
值,也就是所有的响应头部都会带上,你是这样的需求吗?
第三个问题:那么什么场合才会用response
这种方式设置cookie
呢?这种方式设置cookie
有什么用处呢?
答:一般在中间件的时候添加一些特定的cookie
值;比如默认情况下,框架会在Illuminate\Session\Middleware\StartSession
中间件,执行$this->addCookieToResponse($response, $session);
,将request
请求的cookie
值添加到response
中去;
这篇关于laravel什么时候这样设置cookie?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文