我对用户进行了简单的身份验证,在UserController中我有一个名为postLogin()的函数。
public function postLogin()
{
if(Auth::user()->attempt($credentials))
{
return Redirect::intended('desk')->with('stream',"SomeData");;
}
}
使用上面的代码我可以使用" SomeData"成功登录我正在通过
检索它的变量 <?php
$class = Session::get('stream');
var_dump($class);
?>
第一次进入&#34; / desk&#34; url它将值完全转换为&#34; SomeData&#34;但是一旦我刷新页面,它就会重置会话,并且值变为空。
如何在用户退出之前保留此值。
答案 0 :(得分:0)
来自laravel官员documentation:
Flash数据
有时您可能希望仅在下一个会话中存储会话中的项目 请求。您可以使用flash方法执行此操作。数据存储在 使用此方法的会话仅在后续会话期间可用 HTTP请求,然后将被删除。 Flash数据主要是有用的 对于短期状态消息:
$request->session()->flash('status', 'Task was successful!');
如果你需要保留你的闪存数据以获得更多请求,那么你 可以使用
reflash
方法,它将保留所有的Flash数据 周围有额外的请求。如果你只需要保持具体 闪存数据,您可以使用keep
方法:
$request->session()->reflash();
$request->session()->keep(['username', 'email']);