TP5框架 《登录超时或非法访问》

亦凉 2022-03-25 14:30 294阅读 0赞

为了项目的安全性考虑,就是当登录超时或者未登录时,通过浏览器的地址栏直接输入项目内的地址时,

如果想禁止未登录的用户不可以访问到后台,可以这样做:

1、首先每个类都继承一个基类Controller

use think\Controller;

class Index extends Controller{

}

2、在这个基类中,默认的构造方法好像调用了 _initialize() 这个初始化的方法, 没有调用可以自己手动调用下,

然后我们可以在这初始化的方法中写上以下:

  1. /**
  2. * 初始化操作
  3. * @access protected
  4. */
  5. protected function _initialize()
  6. {
  7. //获取当前页面模块名,控制器名
  8. $module = $this->request->module();
  9. $controller = $this->request->controller();
  10. $action = $this->request->action();
  11. //后端判断
  12. if($module == 'admin') {
  13. if($controller != 'Login' && empty(Cookie::get('user'))) {
  14. //登录超时或未登录跳转到登陆页面
  15. $this->error('您已登陆超时,即将退出请重新登陆~');
  16. }
  17. }
  18. }

这样,每次执行某个方法时,都会进入到这个方法里,判断是否已登陆,未登录或者登陆超时,就会自动跳转到自定义的页面;

发表评论

表情:
评论列表 (有 0 条评论,294人围观)

还没有评论,来说两句吧...

相关阅读