【问题标题】:multiple middleware routing not working in laravel 5.6多个中间件路由在 laravel 5.6 中不起作用
【发布时间】:2018-10-25 06:00:40
【问题描述】:
Route::middleware(['auth', 'moderator'], ['auth', 'admin'])->group(function() {
    Route::get('/dashboard', function() {
        return view('dashboard');
    });
});

我用过这个,但它不适合我。

我已经这样做了。

'admin' => \App\Http\Middleware\Admin::class,
        'moderator' => \App\Http\Middleware\Moderator::class,

在kernel.php中

在我的版主中间件中,

public function handle($request, Closure $next)
    {
        if($request->user()->role === 'moderator') {
            return $next($request);
        }
        return redirect('/');
    }

在我的管理中间件中,

public function handle($request, Closure $next)
    {
        if($request->user()->role === 'admin') {
            return $next($request);
        }
        return redirect('/');
    }

t 只检查第一个,例如 ['auth', 'moderator'] 在这个中。

无论我在路由中放入第一个,它只检查那个,它不检查第二个。有什么办法可以解决吗?

【问题讨论】:

  • Route::middleware(['auth', 'moderator', 'admin'])
  • Route::middleware(['auth', 'moderator', 'admin'])->get('/dashboard', function() { return view('dashboard'); }) ;
  • 对我没用..

标签: php laravel routing middleware


【解决方案1】:

试试这个。

`Route::middleware(['auth', 'moderator|admin'])->group(function() {
   Route::get('/dashboard', function() {
       return view('dashboard');
   });
});`

愿它起作用;)

【讨论】:

    猜你喜欢
    • 2018-08-01
    • 2018-05-11
    • 2018-07-21
    • 1970-01-01
    • 2019-01-19
    • 2017-11-09
    • 2018-09-28
    • 2016-07-09
    • 2019-09-19
    相关资源
    最近更新 更多