精华内容
下载资源
问答
  • 2016-03-02 14:20:40

     一般我们使用session记录登录信息,但是浏览器关闭之后,我们需要重新登录

    因为session的过期时间是:会话

    什么意思呢?

    sessionId是存储在浏览器的cookie中的,会话就说明sessionId存在浏览器的内存中,并没有持久化到硬盘

    所以浏览器关闭之后,sessionId就删除了.

     

     

     

    解决方法:设置cookie的有效期

     Cookie c = new Cookie("JSESSIONID", URLEncoder.encode(request.getSession().getId(), "utf-8"));
                c.setPath("/");
                //先设置cookie有效期为2天
                c.setMaxAge(48 * 60 * 60);
                response.addCookie(c);

     参考:http://blog.csdn.net/kenhins/article/details/19122407

     

    更多相关内容
  • 第 2 步 :再次打开浏览器进入页面,获取cookie中的loginStatus,此时已经获取不到了,在此处下线登录状态,就需要用户重新登录了。 // 此处代码要写在项目 这样一进来网站就会被访问到 if (!getCookies('l

    使用cookie来实现

    第 1 步:当登录进入网站时记录状态位loginStatus到cookie中,注意不要设置expires,这样cookie在会话期间有效,当关闭全部浏览器的时候会清除cookie。

    在这里插入图片描述
    在这里插入图片描述

    setCookie('loginStatus', true);
    

    第 2 步 :再次打开浏览器进入页面,获取cookie中的loginStatus,此时已经获取不到了,在此处下线登录状态,就需要用户重新登录了。

    // 此处代码要写在项目 这样一进来网站就会被访问到
    if (!getCookies('loginState')) {
      // 退出登录状态
      logout();
    }
    

    存取cookie可使用自己封装的方法

    展开全文
  • 过了半年之后再使用,无论如何也连接不上,登录状态已断开且未分配IP地址,在卸载重装无数次以及尝试过修复工具,逛遍论坛之后,问题仍未解决。最后解决问题是得到一个朋友的启发:“实在不行就重装大法好了”,...

    2021.7.5更新

    又连不上了呜呜呜,我重装系统了,效果立竿见影。

    问题描述

    博主在写这篇文章的几个月前,曾下载过EasyConnect,可以成功连接。过了半年之后再使用,无论如何也连接不上,登录状态为已断开且未分配IP地址,在卸载重装无数次以及尝试过修复工具,逛遍论坛之后,问题仍未解决。最后解决问题是得到一个朋友的启发:“实在不行就重装大法好了”,想到可能是残留文件问题导致的,后来删除干净残留文件之后,成功连接!

    问题如下图:
    在这里插入图片描述

    解决办法

    思路:卸载干净EasyConnect,并重新安装。

    1. 首先,不论是直接卸载,还是360卸载,都会有许多残存文件,没错,EasyConnect就是那么恶心。并且,卸载之后,打开任务管理器,发现会有Sangfor开头的服务正在运行,并且结束之后还会重新运行。打开文件所在位置,发现位于C:\Program Files (x86)\Sangfor,删是删不掉的,必须先把服务关掉。
    2. 进入任务管理器,找到服务,并进入服务列表,将该服务的自动执行改为手动,重启计算机。
    3. 删除C:\Program Files (x86)\Sangfor文件夹,这是卸载干净的第一步。
    4. 第二步,在C盘搜索Sangfor关键字,把搜索到的文件以及文件夹全部删除,对,全部删除,一个不留。
    5. 第三步,利用360或者其它软件管家,清理注册表。
    6. 以管理员身份重新安装EasyConnect,会弹出两次防火墙设置,在专用网络和共用网络中都设置为可用,并允许访问。
    7. 输入地址,登录
    8. 成功!
      在这里插入图片描述
    展开全文
  • 需要在用户关闭浏览器时,将localStorage中存储的数据清除。 解决方案及思路 一开始想到了onunload方法,性子急直接撸上去 [removed]=()=>{ localStorage.clear(); } 试了试还挺好使,美滋滋的去改下一个bug~~~也...
  • 今天小编就大家分享一篇vue 关闭浏览器窗口的时候,清空localStorage的数据示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • vue关闭浏览器退出登录

    千次阅读 2021-11-30 21:41:42
    根据`beforeunload`和`unload`这两个事件实现关闭浏览器退出登录

      项目需要:也在网上找了不少类似的文章,不过用起来多少有点问题,毕竟要适合自己的需求,我这里是vue3适用,理论上vue2也可以使用,我写的方法是通用的。

      这些方法无非都是根据beforeunloadunload这两个事件执行的。
      下面我搜了下菜鸟教程和MDN对两个事件的介绍,可自行琢磨。

    1、beforeunload事件

    1.1、菜鸟教程:

    在这里插入图片描述

    1.2、MDN

    在这里插入图片描述

    2、unload事件

    2.1、菜鸟教程

    在这里插入图片描述

    2.2、MDN

    在这里插入图片描述
      MDN:通常而言,我们推荐使用 window.addEventListener() 来监听 unload (en-US) 事件,而不是直接给 onunload 赋值。

    下面贴我使用的源码;

    3、源码部分

    3.1、方法一:可写于html页面使用(直接使用)

          var _beforeUnload_time = 0, _gap_time = 0;
          window.onunload = function (){
              _gap_time = new Date().getTime() - _beforeUnload_time;
              if(_gap_time <= 10) {//浏览器关闭
                  window.mgr.signoutRedirect();//这个mgr是我暴露在window的退出登录方法
              }else{//浏览器刷新-chrome刷新
                  console.log(document.domain);
                  return confirm("确定要离开本系统么?");
              }
          };
          window.onbeforeunload = function (){
              _beforeUnload_time = new Date().getTime();
          };
    

    3.2、方法二:可写于组件如app.vue使用(监听事件)

      data() {
        return {
          gap_time: 0,
          beforeUnload_time: 0,
        };
      },
      methods: {
        // 关闭窗口之前执行
        beforeunloadHandler() {
          this.beforeUnload_time = new Date().getTime();
        },
        unloadHandler() {
          this.gap_time = new Date().getTime() - this.beforeUnload_time;
          //判断是窗口关闭还是刷新 毫秒数判断 网上大部分写的是5
          if (this.gap_time <= 10) {
            mgr.signoutRedirect(); // 退出登录接口 这里应当换为个人的登出方法
          } else {
            console.log(document.domain);
            return confirm("确定要离开本系统么?");
          }
        },
      },
      unmounted() {//vue可换为destroyed()生命周期,不过这个也可以用
        // 移除监听
        window.removeEventListener("beforeunload", () => this.beforeunloadHandler());
        window.removeEventListener("unload", () => this.unloadHandler());
      },
      mounted() {
        // 监听浏览器关闭
        window.addEventListener("beforeunload", () => this.beforeunloadHandler());
        window.addEventListener("unload", () => this.unloadHandler());
      },
    

    参考文章:
      vue关闭浏览器时,触发事件,执行退出登录接口
      vue 关闭浏览器清空token (区分刷新)

    展开全文
  • react关闭浏览器后自动退出登录

    千次阅读 2018-01-24 09:29:44
    window.onunload=function(e){//关闭浏览器后的退出操作 _gap_time = new Date().getTime() - _beforeUnload_time; if(_gap_time ) { dispatch({type: 'app/logout'}); } else{ console....
  • 在默认情况下,非正常退出时,session有效期内可直接访问系统,session对象在关闭浏览器后并不是立刻被销毁,因此,为了考虑系统的安全性,在用户退出时,需要即刻清除session对象,防止他人盗用session对象中的信息...
  • 在实现单点登录时,发现关闭浏览器后,并不会自动退出登录 然后,再关闭浏览器后,就会自动调用我们的退出登录函数了。
  • 多数情况下为浏览器插件等应用被谷歌误判风险项,只需从软件安装目录下登录即可 解决方案: 关闭浏览器 打开浏览器安装目录 ①如果是谷歌浏览器: ②如果是Edge浏览器: 双击运行红框程序,进入浏览器后登录...
  • ## 前辈们,如何实现关闭浏览器就能执行退出登录 下面是关闭页面会执行方法,但我想要的是关闭浏览器 ``` ()"> function delSession() { alert("下面的ajax有运行无法弹出窗口"); $.ajax({ ...
  • 今天被授权以管理员身份登录管理系统,录入一些信息,但因为Chrome设置的是保存Cookie,并且先登录了自己的账号,所以即便关掉浏览器再打开,仍然是以自己的账号自动登录,而页面的注销按钮也不好使,开关了几下...
  • 最近我的谷歌浏览器无法保存密码,每次登录网页都要重新登录,比如我每天必访问的B站与CSDN,打开就需要登录,关上浏览器,再次打开浏览器登录相应的网站,还需要再次登录,这真的比较惹人烦、耽误事。
  • 在js页面加载时运行如下代码 代码如下: [removed] = function(){ return “未... 此代码在火狐和ie下不会显示return的值在google浏览器下显示此文字。 失效控制 触发js运行如下: 代码如下: [removed] = function(){};
  • 通常情况下,当我们关闭浏览器重新打开,我们就需要再次进行登陆(如果没有进行下次自动登录之类的设置)。在Jav中(Session是通用的,这里以Java例)有一种叫做Session机制(会话机制)来记录用户的登录信息...
  • 原因: 因为默认情况下,当getSession(),session就被被...但是,这种方法返回的cookie是保存在浏览器的内存中,浏览器关闭后内存会被清理,所以在session在关闭浏览器后就失效了。虽然在服务器保存的session会在...
  • 百度搜索引擎支持个人账号登录,但是每次打开浏览器需要重新登录,搞得还是挺烦的。其原因应该有多种,如果我们没有修改浏览器的cookie与密码这些特殊设置的话,那么原因很可能与我一样。 可能原因: 禁用cookie...
  • 当然如果用户关闭浏览器,会话也就结束了,Session自然也不存在了!大家知道,Session储存在服务器端,根据客户端提供的SessionID来得到这个用户的文件,然后读取文件,取得变量的值,SessionID可以使用客户端的...
  • 我们通过session机制进行用户登录访问页面,其中涉及到了cookie机制,cookie是存储在浏览器端,加入浏览器关闭阻止了cookie,还能通过session进行登录访问页面吗 原因分析: 当我们在登录页面填写好用户名和密码时...
  • 呵呵,我的意思是隔很长时间,再次打开网站,依然保持着登录的状态 不是指一次会话的情况下,保持用户状态主要是求大大来指点一下这样做怎样不好,那样做又有神马问题我理解主要是由两种方式第一种:将用户ID和...
  • bilibili,CSDN每天都要重新登录,烦得很
  • 1、 登录时设置cookie标志位 try { const result = await login({ account: values.mobile, password: shajs('sha1').update(values.password).digest('hex'), verifyCode: values.code, randomNum: this....
  • 关闭浏览器用户退出登录

    千次阅读 2019-04-11 11:25:39
    window.onbeforeunload = function() { //这里放退出登录ajax,把异步关掉 } 直接放在页面中,关闭浏览器时,会自动调用该方法
  • 关闭浏览器再打开,或者说重启浏览器后,网站是否应该自动登录以及如何实现呢?要回答这个问题,首先要了解session和cookie的概念。基本概念先不说了,直接说重点。Session是一种服务器端的对象,保存在服务器端。 ...
  • 理解session和Cookie的机制,其实很简单,自身项目的应用程序是利用Cookie传输SessionID的,只需要Cookie的过期时间不设置,即可在关闭浏览器后,自动销毁本地的SessionID,那么本地用户的登陆状态即可退出。...
  • 实现关闭浏览器标签页退出登录

    千次阅读 2019-11-26 17:46:13
    公司的一个项目突然要加一个在关闭浏览器标签页退出登录的功能,当时首先想到的就是获取浏览器标签页的关闭事件然后执行退出登录方法,浏览器标签页的关闭事件有onbeforeunload和onunload: onunload、...
  • Cookies.set('token', '', {expires: 1}) //设置token空 fetch('你的URL'); } else { sessionStorage.setItem("store", JSON.stringify(_this.$store.state)); } // else //$.post(...
  • 解除jquery离开页面弹出提(1) 先解除绑定在设置弹出内容null。 代码如下:  $(function(){  $(window).unbind(‘beforeunload’);  [removed] = null;  }) 二、其他相关[摘要] (1)window的onunload和...
  • 本来想用fiter过滤后台登录,可是,当你给一个flag时,它实际还是存储在session中,这样的话,在我把url直接跨过框架指向一个新增或者其它后台页面时,只要session中登录过保存的值,直接关闭后,还是没有清除,因此...
  • 虽然刷新与关闭都会走onbeforeunload与onunload,但可能因为刷新在加载新页面前内部机制还需要做一些准备工作,所以刷新事件在执行到onunload事件时,用的时间会比关闭事件时间长。 所以,通过时间差来判断浏览器是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 173,870
精华内容 69,548
关键字:

关闭浏览器后为什么需要重新登录