Laravel 中间件17 Mar 2025 | 4 分钟阅读 中间件充当用户和请求之间的层。这意味着当用户向服务器发出请求时,请求将通过中间件,然后中间件验证请求是否已通过身份验证。如果用户的请求已通过身份验证,则该请求将发送到后端。如果用户请求未通过身份验证,则中间件会将用户重定向到登录屏幕。 除了身份验证之外,还可以使用额外的中间件来执行各种任务。例如,CORS 中间件负责将标头添加到所有响应中。 Laravel 框架包含几个中间件,例如身份验证和 CSRF 保护,所有这些都位于 app/Http/Middleware 目录中。 我们可以说中间件是一个 http 请求过滤器,您可以在其中检查条件。 在中间件中,我们将讨论以下主题
创建一个中间件输入命令 php artisan make:middleware '中间件的名称'。 ![]() 在上图中,我们输入命令 "php artisan make:middleware CheckAge",其中 CheckAge 是中间件的名称。 上面的窗口显示中间件已成功创建,名称为 "CheckAge"。 要查看 CheckAge 中间件是否已创建,请转到您的项目。 我们的项目名称是 laravelproject,因此中间件的路径将是:C:\xampp\htdocs\laravelproject\app\Http\Middleware。 ![]() 应用一个中间件中间件可以应用于所有 URL 或某些特定 URL。 让我们将中间件应用于所有 URL。 步骤 1: 打开 kernel.php 文件。 如果要将中间件应用于所有 URL,请在中间件数组中添加中间件的路径。 步骤 2: 在 Git Bash 窗口中输入命令 php artisan serve。 ![]() 步骤 3: 打开您创建为中间件的 CheckAge.php 文件。 步骤 4: 现在,输入 URL 'https:///laravelproject/public/'。 ![]() 让我们将中间件应用于某些特定路由。 步骤 1: 打开 kernel.php 文件。 如果要将中间件应用于某些特定路由 在上面的代码中,我们添加了代码,即 ''age' => \App\Http\Middleware\CheckAge::class',其中 age 是中间件的名称。 现在,我们可以将 'age' 中间件用于某些特定路由。 步骤 2: 打开您创建为中间件的 CheckAge.php 文件。 步骤 3: 在 web.php 文件中添加中间件代码。 在上面的代码中,我们在根 URL '/' 中添加了中间件,并且我们没有在 'user/profile' URL 中添加中间件。 输出 当我们访问根 URL 时,输出将是 ![]() 上面的输出显示中间件代码也被访问,因为它显示了 "hello world"。 当我们访问 URL,即 /user/profile 时,输出将是 ![]() 上面的输出显示中间件代码未被访问。 当参数在 URL 中传递时。 web.php CheckAge.php 输出 ![]() 在中间件中检查条件中间件也可以用于检查条件。 让我们通过一个例子来理解。 输出 ![]() ![]() 下一个主题路由组 |
我们请求您订阅我们的新闻通讯以获取最新更新。