新手小白,从来没有学过php,但是新工作需要我重构一个项目,重新用laravel框架做这个项目,今天百度了好多,然后最后边学习边摸索大致实现了一个简单的拦截器。

利用中间件和session对未登录用户进行拦截

首先,在用户登录的时候把用户数据存储在session中,注意每次操作session都要先打开会话,即session_start()

laravel简单实现拦截器

然后在用户退出的时候销毁session,注意在调用session_destroy()的时候要先调用session_start(),否则会报错

 laravel简单实现拦截器

 然后执行命令:php artisan make:middleware CheckLogin    生成中间件

 laravel简单实现拦截器

 中间件内容如下:

laravel简单实现拦截器

然后在kernel.php中注册中间件 

laravel简单实现拦截器

最后在路由中添加中间件,即在web.php中为需要的路由添加中间件(这里貌似可以使用路由组批量添加,我没有尝试,有兴趣的人可以试一下),如下:

 laravel简单实现拦截器

就这样简单完成一个拦截器功能。 

相关文章: