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

简介: 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"; 
                }
            

 

目录
相关文章
|
6月前
|
敏捷开发 前端开发 开发者
想要成为软件开发中的王者,需要明白的 21 条准则
想要成为软件开发中的王者,需要明白的 21 条准则
|
5月前
|
前端开发 Java 数据库连接
如何顺利完成毕业项目看完这篇文章有你想要的!
如何顺利完成毕业项目看完这篇文章有你想要的!
|
5月前
|
前端开发 JavaScript NoSQL
假如你是一名专业的程序员,你将如何最快开发一个在线网站,并给出相应的代码及部署文档
假如你是一名专业的程序员,你将如何最快开发一个在线网站,并给出相应的代码及部署文档
23 0
|
12月前
|
运维 程序员
程序员成长第九篇:真实项目中的注意事项
程序员成长第九篇:真实项目中的注意事项
39 0
|
12月前
|
前端开发 测试技术 程序员
程序员成长第八篇:做好测试工作
程序员成长第八篇:做好测试工作
192 0
|
传感器
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
时隔这么长时间,我把常用的功能整理好了,再来感受VueUse工具库的优雅吧~
|
开发框架 Java 测试技术
【测试基础】五、这样提bug单,开发小哥还会怼你么?
【测试基础】五、这样提bug单,开发小哥还会怼你么?
【测试基础】五、这样提bug单,开发小哥还会怼你么?
想要搭建陪玩平台,这几点不容忽视
随着互联网经济的持续稳定发展,游戏市场的“封印”逐渐被打开,搭建陪玩平台成为一个新的热点。提起陪玩系统相信大家也不陌生,漫漫单排路如果有一个大神能带自己躺赢那是再好不过了,于是陪玩系统运营而生。想要搭建陪玩平台,应该注意哪些问题呢?
|
SQL 存储 分布式计算
“开源”vs“商业”,差别到底有多大?这篇测试一目了然
来自用户的声音… 开源就能搞定,还要选商业方案吗? 我是小白用户,开源方案上手快吗? 性能有极致要求,开源能满足吗? 追求性价比,哪种方案更适合我? 我对MySQL很熟悉,数据分析场景适合吗? 上述问题如何解?看阿里云帮你对比分析!
15045 0
“开源”vs“商业”,差别到底有多大?这篇测试一目了然
|
Java 数据库 NoSQL
也许能帮到你一点!eboot框架基础版发布
每次开发都从0开始,重复造了无数个轮子,或者是把之前的项目抠出来,改吧改吧。但是技术的更新速度太快,甚至还见过现在开发的项目用jdk1.6的,因为老项目用的1.6······ 为了简化项目开始这一步的操作,有了开发eboot的念头,已经有很多前辈开发过类似这样的东西,在这里先感谢一下走在前面的前辈们,但是每个人的都会有一些不同,能给大家提供多一种的选择也就足够了 eboot简介 目前发布一个基础版,适用于中小型项目开发,后续会加入更多功能,以满足大型项目的需求。
1246 0