Http 中间件

本文详细介绍了PHP中间件的概念,包括如何定义一个中间件如`OldMiddleware`,处理请求并进行条件重定向。接着阐述了中间件的注册,包括全局中间件的设置和特定路由或控制器的分配。此外,还讨论了中间件接收额外参数的能力,如在执行操作前验证用户角色。最后提到了可终止的中间件,暗示了中间件在处理流程中的灵活性。

1.定义中间件

生成中间件
在这里插入图片描述

<?php

namespace App\Http\Middleware;

use Closure;

class OldMiddleware
{
    /**
     * 返回请求过滤器
     *
     * @param  \Illuminate\Http\Request  $request
     * @param  \Closure  $next
     * @return mixed
     */
    public function handle($request, Closure $next)
    {
        if ($request->input('age') <= 200) {
            return redirect('home');
        }

        return $next($request);
    }

}

中间件的行为在请求执行前还是执行后,取决于中间件本身
在这里插入图片描述
在这里插入图片描述

2.注册中间件

全局中间件
如果你想要中间件在每一个HTTP请求期间被执行,只需要将相应的中间件类放到app/Http/Kernel.php的数组属性$middleware中即可

分配中间件到路由
在这里插入图片描述
控制器中使用中间件

public function __construct() {
	return $this->middleware(['middlewarename'])->except(['index']);
}

3.中间件参数

中间件还可以接收额外的自定义参数,比如,如果应用需要在执行动作之前验证认证用户是否拥有指定的角色,可以创建一个RoleMiddleware来接收角色名作为额外参数。
在这里插入图片描述
在这里插入图片描述

4. 可终止的中间件

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值