VerifyCsrfToken.php 第 156 行中的错误异常:尝试获取 属性 的非对象 laravel 中间件

ErrorException in VerifyCsrfToken.php line 156: Trying to get property of non-object laravel middleware

我在创建自己的中间件并使用它时遇到此错误

public function handle($request, Closure $next)
{
    $privilege = $request->session()->has('privilege');

    if($request->session()->has('privilege'))
    {
        if($privilege == "Owner" || $privilege == "owner")
        {
            return $next($request);
        }
        else
        {
            return redirect()->back()->withErrors(['privilege_check' => "You are not privileged to go there!."]);
        }
    }
    return '/home';
}

很可能您还没有设置 session('privilege')。如果您已经设置好,请关闭浏览器并 运行 从头开始​​重新启动应用程序。可能开发的时候没有设置。

检查这个

public function __construct()
{
    $this->middleware(function ($request, $next) {
        if(Session::get('user_id') == NULL)
        {
            return Redirect::to('login');
        }else{
            return $next($request);
        }
    });
}