背景: 在写一个登出功能时要跳转到登录页面 想利用session的闪存机制 也就是一次性session携带信息到登录页面去做弹窗提示。
在session的闪存中存在两个可以用到的方法:
//session辅助函数flash方法
session()->flash()
//页面重定向with方法携带session闪存
redirect()->with()
抱着学习的态度呢 两个方法我都用了一下
$request->session()->flush();
session()->flash('flash', 'logout success');
return redirect('login')->with('with',11111);
输出结果
结果两个闪存的session都没有获取到
然后我就在百度、google开始冲浪,直到发现了一篇文章说到
然后我抱着试试看的做法 写进了我的路由文件
然而并没有解决我的问题
但是确实给了我方向 是不是中间件的问题 然后我就发现
我在全局中间件中和路由组中间件中同时调用了StartSession导致在打开web.php的路由会响应两次
session闪存失效,删掉一个。同时在路由中添加路由组.完美解决