模型绑定在身份验证中间件之前运行

问题描述

我想问一下如何在模型绑定之前运行auth中间件?当前在我的5.7应用程序中,模型绑定在auth之前运行。我尝试如下在kernel.PHP中创建一个middlwaregroup:

        'api' => [
        'throttle:10,1','jwt.middleware','bindings',],

但是模型绑定仍然在auth之前运行。另外,我尝试更改路由中两个中间件的顺序,但没有任何改变。

解决方法

答案在: https://laravel.com/docs/5.7/middleware#sorting-middleware

protected $middlewarePriority = [
    \Illuminate\Session\Middleware\StartSession::class,\Illuminate\View\Middleware\ShareErrorsFromSession::class,\App\Http\Middleware\Authenticate::class,\Illuminate\Session\Middleware\AuthenticateSession::class,\Illuminate\Auth\Middleware\Authorize::class,\Illuminate\Routing\Middleware\SubstituteBindings::class,];