在laravel 5.3控制器中获取经过身份验证的用户

时间:2016-12-01 09:21:00

标签: php laravel

我试图在Laravel 5.3的控制器中获得Product但每次都显示Auth::user()。这是在Laravel 5.3中改变了吗?

null

即使我已登录,它也会在if条件下每次都进行

2 个答案:

答案 0 :(得分:0)

首先是它改变了; 5.2验证文件在app / Http / Middleware上,但知道它对vendor / laravel / framework / src / Illuminate / Auth的更改 现在我遇到了和你一样的问题,因为我的项目是5.2,我感到困惑,但你也可以在app / Http / Middleware上制作自己的身份验证文件 它适合我 我希望我的回答对你有用

答案 1 :(得分:0)

什么是最不可能的" laravel-way"但是解决方法是定义一个中间件并在构造函数方法中传入一个闭包。

public function __construct()
{   
    $this->middleware(function ($request, $next) {
        $this->user = Auth::user();
        return $next($request);
    });
}

从那时起,您可以在其他方法中使用$this->user。 它有效,但我不确定解决方案的适当性。如果有人知道更好的方式,我也在寻找它:)