在拉拉维尔的会议上我有个问题。我尝试重定向页面,同时使用with()方法发送一些会话变量:
return Redirect::To('/')->with('foo','bar');但是当页面出现时,唯一设置的会话变量是_token和locale、'foo‘和'bar’。运行{!! var_dump(Session::all()); !!}提供:
array(2) { ["_token"]=> string(40) "l5NawtJdHJtanTErsya440UvPQIgqNExiryJIkIO" ["locale"]=> string(2) "se" }奇怪的是,存储在storage/framework/sessions中的会话有其他变量集,如url和PHPDEBUGBAR_STACK_DATA,它们在重定向时不会出现。
现在,真正的转折是:当在另一台计算机上运行时,它完美地工作。
我们使用相同的存储库、相同的代码、新安装的laravel、相同的web浏览器、相同的OS (Mac)和相同的本地运行服务器程序(MAMP)进行测试。在另一台计算机上,它可以正常工作,在第三台计算机上工作,但在我的计算机上不工作。
应用程序处于调试模式,我已经尝试过清除Laravel和浏览器中的所有缓存,没有任何改变。
有人知道如何解决这个问题吗?
发布于 2016-06-20 10:13:08
显然,在config/session.php中,变量domain被设置为生产域。因此,在我的计算机上使用本地主机时,无法读取或写入cookie laravel_session。
它的工作方式是:
'domain' => null,
发布于 2016-06-18 11:07:09
with()方法用于将数据传递给视图。如果要向会话添加某些内容,请使用session()->flash->('foo', 'bar');(下一个请求后自动擦除)或session()->put('foo', 'bar');
https://stackoverflow.com/questions/37885180
复制相似问题