laravel 创建自定义中间件

本文介绍如何在Laravel框架中创建和使用中间件,包括全局中间件、指定路由中间件和中间件组的配置方法,以及如何通过中间件实现用户登录验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 首先我们要定义一个新的中间件,Artisan命令:
php artisan make:middleware LoginMiddleware

这个命令会在 app/Http/Middleware 目录下创建一个新的中间件类 LoginMiddleware.php
在这里插入图片描述
我这里是判断session里是否有值,如果没有值,则重定向到登陆界面,让用户重新登录,无法访问。右侧方框里可以写自己的逻辑。
然后,我们还需要在Kernel.php文件里注册一下。
注册中间件
中间件分三类,分别是全局中间件、中间件组和指定路由中间件:

  1. 全局中间件
    如果你想要定义的中间件在每一个 HTTP 请求时都被执行,只需要将相应的中间件类添加到 app/Http/Kernel.php 的数组属性 $middleware 中即可。
    在这里插入图片描述
  2. 分配中间件到指定路由
    如果你想要分配中间件到指定路由,首先应该在 app/Http/Kernel.php 文件中分配给该中间件一个 key,默认情况下,该类的 $routeMiddleware 属性包含了 Laravel 自带的中间件,要添加你自己的中间件,只需要将其追加到后面并为其分配一个 key。
    在这里插入图片描述
  3. 中间件组
    有时候你可能想要通过指定一个键名的方式将相关中间件分到同一个组里面,这样可以更方便地将其分配到路由中,这可以通过使用 HTTP Kernel 提供的 $middlewareGroups 属性实现。
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值