一元网络论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 15182|回复: 1

thinkphp 中间件自用使用学习记录

[复制链接]

3万

主题

3万

帖子

9万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
93367
发表于 2021-1-14 17:01:36 | 显示全部楼层 |阅读模式
一、中间件文件定义

在APP\middleware目录 下建 立的类文件,均为中间件,全局中间件、路由中间件、控制器中间件,均可以通过目录路径引用这些中间件。多应用应该在自己的应用目录下再新建middleware目录,再在下面建立类文件。


二、中间件文件引用或叫使用

按一步骤建立中间件文件后

(一)作为全局间件使用
在APP目录下的middleware.php文件 中,加入一中的路径及文件,   比如 \app\middleware\chushimima::class,   这样就是作为全局中间件使用。在全局都起作用。
不在middleware.php中注册的中间件就不是全局中间件,根据定义方法不同分为路由中间件,控制器中间件。

(二)作为路由中间件使用
还是同一个中间件类文件\app\middleware\chushimima,在APP目录下的route目录下的路由定义文件 中,加入路由规则,比如
Route::rule('index/denglu','index/denglu');
       ->middleware('\app\middleware\chushimima');

这样就是路由中间件,只在访问这个路由的时候起作用。

(三)作为控制器中间件使用
还是同一个中间件类文件\app\middleware\chushimima,在你的控制器文件中添加以下代码,比如
class Index extends BaseController
{    protected $middleware='\app\middleware\chushimima';

这样就是控制器中间件,会在整个控制器中起作用。

不得不吐槽,官方写的文档真他妈烂,论坛更是没一个回复是有帮助的,真后悔学这破玩意,可都学到这了,再放弃真的可惜。还是学完吧。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|一元网络论坛

GMT+8, 2024-11-21 17:47 , Processed in 0.112922 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表