• 利用session控制 长时间未操作自动退出登录


    做项目时,一般会考虑到长时间未进行操作,能够自动退出登录。下边就利用session来实现这一功能

    //采用H5 sessionStorage,保存登录信息的公共js,不采用jquery
    //目前仅为供给平台使用
    var _EXPIRE_TIME=30*60*1000;//三十分钟没有操作,则注销
    var _interval_handler=-1;
    (function () {
        //先判断是否登录 cgpt_memberInfo为存在浏览器中的session信息
      var memberObjStr = sessionStorage.getItem("cgpt_memberInfo");
      if (memberObjStr) {//已登录
        //刷新最后使用时间
        sessionStorage.setItem("cgpt_lastVisitTime", new Date().getTime());
        _interval_handler=setInterval(checkExpired, 10*1000);//10秒钟检查一次,是否超时
      }
    })();
    
    function checkExpired() {
      console.log("10秒检查一次是否过期"+window.location.href+"::"+new Date());
      var storeLastTime=sessionStorage.getItem("cgpt_lastVisitTime")?sessionStorage.getItem("cgpt_lastVisitTime"):-1;
      if (storeLastTime==-1) cleareInterval(_interval_handler);
      else {
        if ((new Date()).getTime()-storeLastTime>_EXPIRE_TIME) {  //过期了
          //删除sessionStorage信息
          alert("由于您长时间未进行操作,系统已为您自动退出登录");
          sessionStorage.clear();
          //把页头中的已登录部分,改为需要登录的样子
          document.location.reload();//刷新当前页面 
          //退出循环
          clearInterval(_interval_handler);
        }
      }
    }
  • 相关阅读:
    适配器模式
    控制器的显示注入
    自定义过滤器
    配置路由
    JavaScript判断浏览器类型及版本(新增IE11)
    路径别名
    判断是否是IE浏览器和是否是IE11
    页面视图中的按钮操作指向
    安卓开发环境搭建与环境变量设置
    html中iframe子页面与父页面元素的访问以及js变量的访问
  • 原文地址:https://www.cnblogs.com/TigerZhang-home/p/9002867.html
Copyright © 2020-2023  润新知