嗨我在/vendor/myCustom/src/Middleware/aMdl.php中的新鲜库中的auth() - > user()或$ request-> user()有问题
public function handle($request, Closure $next, $right)
{
return var_dump($request->user()); <------ Here i get NULL
if($request->user()->hasRights($right)){
return $next($request);
}
return redirect("/");
}
这是一个简单的服务提供商
public function boot()
{
$this->loadViewsFrom(__DIR__."/views", 'aFolder');
}
/**
* Register services.
*
* @return void
*/
public function register()
{
include __DIR__."/routes.php";
$this->app->make("aCustomlib\aFolder\Controllers\aController");
}
一条简单的路线。
Route::get("/aPath", "aCustomlib\aFolder\Controllers\aController@index");
我在Kernel.php中注册了中间件
然后我只是在aController.php中调用__constructor
$this->middleware('rights:aRight');
我知道名字是愚蠢的名字,但它只是一个例子,我只是在学习。
感谢您的回答。
PS:所有这些文件都在/ vendor文件夹中
即使我在__constructor(){$ this-&gt;中间件(&#39; auth&#39;)
中使用,也会发生这种情况答案 0 :(得分:1)
您需要将路由包装在web
中间件组中(启动并填充会话相关数据),例如:
Route::group(['middleware' => 'web'], function () {
include __DIR__."/routes.php";
});