千家信息网

laravel中间件怎么自定义

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,今天小编给大家分享一下laravel中间件怎么自定义的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起
千家信息网最后更新 2025年02月23日laravel中间件怎么自定义

今天小编给大家分享一下laravel中间件怎么自定义的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

什么是中间件

中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制。例如,Laravel 内置了一个中 间件来验证用户是否经过认证(如登录),如果用户没有经过认证,则中间件会将用户重定 向到登录页面;而如果用户已经经过认证,则中间件会允许请求继续往前进入下一步操作。 除了认证功能,中间件还可以被用来处理许多其他任务。比如,CORS 中间件可以为离开站 点的相应添加合适的头(跨域);日志中间件可以记录所有进入站点的请求,从而方便我们 构建系统日志系统。

Lavarel 自带了一些中间件,包括认证、CSRF 保护中间件等。所有的中间件都位于 app\Http\Middleware 目录下。

一、自定义中间件

步骤:

  1. 使用 artisan 命令创建中间件php artisan make:middleware 中间件名

  2. 在创建的中间件中编写逻辑

  3. 在 app\Http 文件夹中的配置文件 Kernel.php 中注册中间件

  4. 将中间件分配给路由或控制器

二、举个例子

比如游乐园某些项目需要12岁或者身高超过1米4可以玩。

我们创建一个检验年龄的中间件

php artisan make:middleware CheckAge

Closure 是一个闭包函数
$request用来接收应用的请求数组
$next 将请求传递给应用程序
$next($request) 将请求传递给应用程序

 public function handle(Request $request, Closure $next)    {        if($request->age < 12){            dd("你的年龄不符合要求") ;        }        return $next($request);    }

注册中间件

打开 app\Http 文件夹中的配置文件 Kernel.php

$middleware 配置全局中间件,所有http请求都需要经过我们定义好的中间件。
$middlewareGroups中间件组
$routeMiddleware 定义别名

'age' => \App\Http\Middleware\CheckAge::class

打开web.php创建一个路由

//中间件Route::get('middleware/{age}',function () {    return "你的年龄符合要求";})->middleware('age');

以上就是"laravel中间件怎么自定义"这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注行业资讯频道。

中间件 认证 文件 用户 知识 篇文章 应用 年龄 配置 内容 应用程序 文件夹 日志 程序 系统 路由 逻辑 登录 不同 合适 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 软件开发到长沙找什么工作 网络安全知识科普宣传 宁夏银川数据防泄密软件开发 app和数据库关联的文件名 国家总工会网络安全工程师 计算机网络技术专科哪个学校好 软件开发属于什么采购 双峰县审计局网络安全 服务器不能读取电源信息么 旧平板改造服务器可以做什么 星盘软件开发 广东省网络安全管理征求意见 企业服务器环境容器化 湖南长沙网络安全公司 鑫顺网络技术有限公司怎么样 宏伟互联网科技有限公司官网 向数据库中的某一列插入数据 服务器主板能插显卡吗 软件开发属于哪个经营类型 检察机关网络安全干嘛的 数据库集中监控管理 fda官网中文版食品数据库 内网切外网dns服务器未响应 服务器公网ip安全 临沂直销软件开发系统 绝地求生国际服是哪个服务器 王者服务器爆笑视频 新加坡网络安全硕士 南京成麦软件开发有限公司 一个常规服务器运行功率
0