介绍
怎么在laravel框架中使用中间件?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
laravel框架自带了一些中间件,包括认证,CSRF保护中间件等等。所有的中间件都位于app/Http/中间件目录。
中间是请求前还是请求后执行取决于中间件本身,以下中间件会在请求处理前执行一些任务
& lt; php ? namespace 应用\ Http \中间件; use 关闭; class TestMiddle { public 才能;function 处理(请求,美元,Closure 下一美元) {才能 ,,,//,执行动作 ,,,如果(! $请求→会话()→有(& # 39;huser& # 39;)) { ,,,,,return 重定向(“登录/index"); ,,,} ,,,return 下一美元($请求); ,,} }
而下面这个中间件则会在请求处理后执行其任务:
& lt; php ? namespace 应用\ Http \中间件; use 关闭; class TestMiddle { public 才能;function 处理(请求,美元,Closure 下一美元) {才能 ,,,response 美元;=,未来美元($请求); ,,,//,执行动作 ,,,如果(! $请求→会话()→有(& # 39;huser& # 39;)) { ,,,,,return 重定向(“登录/index"); ,,,} ,,,return 美元反应; ,,} }
中间件可以自己在编辑器里面新建对应类生成,也可用命令生成
php artisan : middleware TestMiddle
此时,laravel中间件的应用\ Http \ \目录就会多一个TestMiddle。php的中间件文件
此时中间件还不能直接使用,必须把它注册到我们的laravel中,如下
只需在app/Http/内核。php类(3个属性,对应里面加入,我有时用路由的)
& # 39; TestMiddle& # 39;,=祝辞,中间件\ App \ Http \ \ TestMiddle::类,
分配中间件到路,由下面介绍三种方式
路线::get(& # 39;/& # 39;函数(){ return 才能;重定向(& # 39;home/指数# 39;); })→中间件(& # 39;TestMiddle& # 39;); 路线:集团([& # 39;中间件# 39;,=祝辞,[& # 39;TestMiddle& # 39;]],,()函数,{ 路线:才能控制器(“db",“DataBaseController"); }); 路线:控制器(“home",“HomeController",[& # 39;中间件# 39;=祝辞& # 39;TestMiddle& # 39;]);
关于怎么在laravel框架中使用中间件问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。