thinkphp6 控制器中间件

控制器中间件

中间件主要用于拦截或过滤应用的HTTP请求,并进行必要的业务处理。
新版部分核心功能使用中间件处理,你可以灵活关闭。包括Session功能、请求缓存和多语言功能。

例, 因新版tp不可以在initialize初始化中重定向跳转,那么就需要使用到中间件去做登录验证及跳转
1.根目录执行 建立后台的中间件

php think make:middleware AdminCheck

之后在根目录下的config/app.php文件中的deny_app_list里面要加上middleware,因为不要让外部访问到中间件
在这里插入图片描述
2.因判断登录需要用到session,而tp新版本禁用了session那么在中间件中需要开启session
app目录下的middleware.php 文件 开启session初始化
在这里插入图片描述
3.之后在刚才建的中间件文件中判断登录与否(记得引入seesion)
在这里插入图片描述
4.在后台基类中使用中间件— 这样后台所有的方法都会走中间件判断登陆与否
在这里插入图片描述

5.因后台的登录页(模拟的admin/index/index就是登录页)也会走中间件这样就会出现多次重定向报错
解决的方法
1.在中间件中判断如果是登录的地址那么就不要再跳转
2.在登录的控制器中加入中间件的排除方法,这样中间件遇到这个方法就不会走了
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值