laravel中间件基础详解
发布时间 - 2022-05-18 00:00:00 点击率:次本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于中间件的相关问题,包括了什么是中间件、自定义中间件等等,中间件为过滤进入应用的 http 请求提供了一套便利的机制,下面一起来看一下,希望对大家有帮助。
【相关推荐:
laravel视频教程】
什么是中间件
中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制。例如,Laravel 内置了一个中 间件来验证用户是否经过认证(如登录),如果用户没有经过认证,则中间件会将用户重定 向到登录页面;而如果用户已经经过认证,则中间件会允许请求继续往前进入下一步操作。 除了认证功能,中间件还可以被用来处理许多其他任务。比如,CORS 中间件可以为离开站 点的相应添加合适的头(跨域);日志中间件可以记录所有进入站点的请求,从而方便我们 构建系统日志系统。
Lavarel 自带了一些中间件,包括认证、CSRF 保护中间件等。所有的中间件都位于 app\Http\Middleware 目录下。
一、自定义中间件
步骤:
- 使用 artisan 命令创建中间件
php artisan make:middleware 中间件名 - 在创建的中间件中编写逻辑
- 在 app\Http 文件夹中的配置文件 Kernel.php 中注册中间件
- 将中间件分配给路由或控制器
二、举个例子
比如游乐园某些项目需要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');测试
http://www.la.com/middleware/1
http://www.la.com/middleware/12
【相关推荐:laravel视频教程】
# laravel
# php
# lavarel
# 中间件
# csrf
# 闭包
# http
# 自定义
# 创建一个
# 配置文件
# 应用程序
# 是一个
# 还可以
# 夹中
# 带来了
# 给大家
# 不符合
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel Asset编译怎么配置_Laravel Vite前端构建工具使用
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
如何彻底删除建站之星生成的Banner?
bing浏览器学术搜索入口_bing学术文献检索地址
香港服务器网站推广:SEO优化与外贸独立站搭建策略
高端云建站费用究竟需要多少预算?
如何正确下载安装西数主机建站助手?
Laravel事件和监听器如何实现_Laravel Events & Listeners解耦应用的实战教程
Swift中循环语句中的转移语句 break 和 continue
微信h5制作网站有哪些,免费微信H5页面制作工具?
详解Oracle修改字段类型方法总结
html5的keygen标签为什么废弃_替代方案说明【解答】
ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】
Win11关机界面怎么改_Win11自定义关机画面设置【工具】
北京专业网站制作设计师招聘,北京白云观官方网站?
如何在万网主机上快速搭建网站?
Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】
ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法
Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用
Laravel Eloquent模型如何创建_Laravel ORM基础之Model创建与使用教程
Laravel如何实现URL美化Slug功能_Laravel使用eloquent-sluggable生成别名【方法】
实例解析angularjs的filter过滤器
中山网站推广排名,中山信息港登录入口?
Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】
javascript中对象的定义、使用以及对象和原型链操作小结
非常酷的网站设计制作软件,酷培ai教育官方网站?
Laravel怎么返回JSON格式数据_Laravel API资源Response响应格式化【技巧】
网站制作壁纸教程视频,电脑壁纸网站?
Windows10电脑怎么查看硬盘通电时间_Win10使用工具检测磁盘健康
Laravel如何使用withoutEvents方法临时禁用模型事件
Laravel distinct去重查询_Laravel Eloquent去重方法
Laravel怎么为数据库表字段添加索引以优化查询
Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
如何用y主机助手快速搭建网站?
Laravel storage目录权限问题_Laravel文件写入权限设置
文字头像制作网站推荐软件,醒图能自动配文字吗?
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
,怎么在广州志愿者网站注册?
香港服务器选型指南:免备案配置与高效建站方案解析
如何快速完成中国万网建站详细流程?
Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能
Midjourney怎么调整光影效果_Midjourney光影调整方法【指南】
UC浏览器如何设置启动页 UC浏览器启动页设置方法
网站设计制作书签怎么做,怎样将网页添加到书签/主页书签/桌面?
uc浏览器二维码扫描入口_uc浏览器扫码功能使用地址
如何在腾讯云服务器快速搭建个人网站?
如何在万网ECS上快速搭建专属网站?
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
详解免费开源的.NET多类型文件解压缩组件SharpZipLib(.NET组件介绍之七)

