laravel中间件基础详解

2022-05-30 0 658

本篇文章给大家带来了关于laravel的相关知识,其中主要介绍了关于中间件的相关问题,包括了什么是中间件、自定义中间件等等,中间件为过滤进入应用的 HTTP 请求提供了一套便利的机制,下面一起来看一下,希望对大家有帮助。

laravel中间件基础详解

【相关推荐: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

laravel中间件基础详解

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

laravel中间件基础详解

打开web.php创建一个路由

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

测试

http://www.la.com/middleware/1
laravel中间件基础详解

http://www.la.com/middleware/12
laravel中间件基础详解

【相关推荐:laravel视频教程】

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 laravel中间件基础详解 https://www.jike1995.com/37589.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务