在Laravel自定义错误页面中访问会话变量

时间:2016-10-10 06:19:15

标签: php laravel session

我正在尝试在Laravel 5.3中创建自定义错误页面。我希望检索存储在Session中的一些变量,如Session::get("username"),但我得到的是一个空变量。

我想如何在Laravel的自定义错误页面中获取任何Session变量,或者这是不可能的?

1 个答案:

答案 0 :(得分:2)

由于Laravel没有找到该路由,因此您没有通过中间件\Illuminate\Session\Middleware\StartSession(默认情况下在web中间件组中),因此您的会话未启动。

要初始化会话,请在\Illuminate\Session\Middleware\StartSession::class,中将web$middleware移至Kernel.php

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \Illuminate\Session\Middleware\StartSession::class,
],

$midleware中的中间件始终运行,因此即使未找到路线,也会初始化您的会话。