工作中一些比较奇怪的产品需求笔记

简介: 1.要求登录以后点击浏览器返回以后再点返回需要重新登录;这个本来是浏览器默认的一些缓存,当时也是在网上各种百度  解决问题思路 :当时经过反复的测试,发现每次浏览器返回之后会重新加载一次页面js;但是不会给服务器发请求;也就是从后台没办法控制‘     然后给windos设置了一个全局变量;每次...

1.要求登录以后点击浏览器返回以后再点返回需要重新登录;这个本来是浏览器默认的一些缓存,当时也是在网上各种百度

  解决问题思路 :当时经过反复的测试,发现每次浏览器返回之后会重新加载一次页面js;但是不会给服务器发请求;也就是从后台没办法控制‘

     然后给windos设置了一个全局变量;每次加载的时候判断这个全局变量,如果不满足这个条件则直接让系统退出登录;

//页面后退后直接退出事件
if(window.name == "" ){

  window.name = "bencalie";
  }else{

  window.location.href="logout";
    window.name = "";
  }

  问题解决了。但是又出现了一下心得问题。欣慰每次加载都会判断这个变量,。导致浏览器刷新也会退出系统;

然后想方设法的去捕捉浏览器刷新的事件。又是各种百度。结果并没有什么用;把f5这个按键刷新倒是屏蔽了。可是浏览器点击刷新根本捕捉不完整;

为了解决这个问题也是心累了,左想右想也没解决;然后从头开始整理

  浏览器返回和前进不会请求服务器,但是会重新加载js;但是浏览器刷新会发起服务器请求;

  然后就看了一下浏览器发请求到登录成功的时间。再看了一下浏览器返回再前进的时间;然后就设了一个时间戳;判断这个时间戳的大小,发现在我这个项目是可行的

  步骤  1.发起请求的时候传一个时间戳到前端页面保存;这样只有刷新页面的时候才会更新时间戳;浏览器返回前进的时候并不会更新时间戳;在js加载的时候获取当前时间;

一般服务器更新了这个时间戳的话,。他们差值就会很小;如果没有更新,。但是又要重新加载页面;那基本上就可以判断为是浏览器的前进和后退了

问题解决

 

      var timestamp = (new Date()).getTime();//获取当前时间。和浏览器传过来的时间,如果差值大于3秒,则直接退出系统
            if(timestamp-$("#data").val()>=3000){
                  window.location.href="logout"; 
                }
            

 

目录
相关文章
|
敏捷开发 前端开发 开发者
想要成为软件开发中的王者,需要明白的 21 条准则
想要成为软件开发中的王者,需要明白的 21 条准则
|
7月前
|
前端开发 Java 数据库连接
如何顺利完成毕业项目看完这篇文章有你想要的!
如何顺利完成毕业项目看完这篇文章有你想要的!
|
Go
选择困难?试试libhunt
选择困难?试试libhunt
104 0
|
传感器
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
|
uml 开发者 Windows
推荐5款冷门小工具,看一看有没有你喜欢的?
每个人的电脑中都会安装很多软件,可能还保留着很多不为人知的冷门软件。不过虽然冷门,但绝不意味着低能,相反很多冷门软件的功能十分出色。闲话少说,接下来我就给大家推荐5款冷门小工具,看一看有没有你喜欢的。
193 0
推荐5款冷门小工具,看一看有没有你喜欢的?
|
测试技术
初级软件测试面试题怎么找?提供的这两个地方你肯定用得上
最近几年,随着电子产品和互联网的蓬勃发展,各类科技公司如雨后春笋般出现,而软件公司作为科技类公司中的重要组成部分,在这支互联网大军中也占据了重要一席。因而,负责软件问题质检的软件测试岗位也逐渐成了这几年炙手可热的就业岗位之一。
151 0
|
开发框架 Java 测试技术
【测试基础】五、这样提bug单,开发小哥还会怼你么?
【测试基础】五、这样提bug单,开发小哥还会怼你么?
【测试基础】五、这样提bug单,开发小哥还会怼你么?
|
存储 算法 安全
我用一个小小的开放设计题,干掉了40%的面试候选人
去年团队招聘需求比较大,本人参与了近百次的面试工作。今天来跟大家聊聊,面试候选人过程中,一个常见的开放类设计题目的解题思路,以及候选人的理解设计误区分析。
我用一个小小的开放设计题,干掉了40%的面试候选人
|
Java
磊哥工作十几年了,竟没有用过do-while!(文末送书)
磊哥工作十几年了,竟没有用过do-while!(文末送书)
179 0
磊哥工作十几年了,竟没有用过do-while!(文末送书)
|
Java 数据库 NoSQL
也许能帮到你一点!eboot框架基础版发布
每次开发都从0开始,重复造了无数个轮子,或者是把之前的项目抠出来,改吧改吧。但是技术的更新速度太快,甚至还见过现在开发的项目用jdk1.6的,因为老项目用的1.6······ 为了简化项目开始这一步的操作,有了开发eboot的念头,已经有很多前辈开发过类似这样的东西,在这里先感谢一下走在前面的前辈们,但是每个人的都会有一些不同,能给大家提供多一种的选择也就足够了 eboot简介 目前发布一个基础版,适用于中小型项目开发,后续会加入更多功能,以满足大型项目的需求。
1292 0