`
fackyou200
  • 浏览: 301126 次
  • 性别: Icon_minigender_1
  • 来自: 山西太原
社区版块
存档分类
最新评论

解决:在点击用户退出登录时,再按浏览器的后退按钮,仍然能够看到之前的页面

 
阅读更多

 

需要在服务器返回的response header里面设置Cache-control为"no-cache, no-store",而不是在页面中添加META

 

response.setHeader("Cache-Control","no-cache,no-store");     
response.setHeader("Pragma","no-cache");     
response.setDateHeader ("Expires", -1); 

 ================================================================================

转:http://blog.163.com/xiaokangzhijia@126/blog/static/16595485620106171354509/

 

 

方法如下:

一、

1.当你点击退出系统是,不直接返回登录界面,而是通过window.location.href返回登录界面。
2..或者在每张页面都有session判断,如果session为空则返回登录界面

二、

1.浏览器缓存
   我们有时候会发现是退出系统了可是通过历史记录或者直接访问地址,最后一次操作的数据或显示的列表还在那里,一堆人在冒汗,说你系统不安全!
   其实这时候并没有访问到系统,是本地的浏览器缓存在做怪。
2.没有做权限拦截
   很多人在做程序的时候可能会忘记去注意权限分配了,有些功能是要求用户在登录状态下使用的,甚至是某个角色的用户才可以操作的。如果没有做这些限制,很容易被人利用,最简单的就是通过地址直接访问。

这两个方面内容是造成问题出现的绝大部分原因.

解决方案:

1.禁止缓存

如:jsp
<%
response.setHeader("Pragma","No-Cache");
response.setHeader("Cache-Control","No-Cache");
response.setDateHeader("Expires", 0);
%>

2.利用session在页面进行拦截

如:jsp原码

String userid= (String)session.getValue("userid");
if(userid==""||userid==null)//判断指定session值的存在与否,来检查是否已经登录
{
  跳转到提示页面
}
else
{
  其他主体程序代码
}

利用以上两个方法同时使用,能够解决大部分问题,包括浏览器返回的问题。

3.利用struts配置拦截器
4.涉及权限的就不能简判断有没有登录了,应该取出用户的权限值(一般也建议放入session,避免频繁访问数据库)来判断是否可以执行,处理思路也和判断有无登录相同
如:jsp
String level= (String)session.getValue("level");
if(level==""||level==null||!level.equals("1"))//判断指定session值的存在与否并检查权限值
{
  跳转到提示页面
}
else
{
  其他主体程序代码
}

三、
这里的方法是千姿百态,有的是更改浏览器的历史纪录的,比如使用window.history.forward()方法;有的是“用新 页面的URL替换当前的历史纪录,这样浏览历史记录中就只有一个页面,后退按钮永远不会变为可用。”比如使用 javascript:location.replace(this.href); event.returnValue=false;

分享到:
评论

相关推荐

    当用户退出点击浏览器后退仍可回到原来页面的解决方案

    解决方案2:禁用浏览器后退键 [removed] window.history.forward(1); 结果和方案一一样的结果,pad上没效果 解决方案3:Response.Write(“[removed][removed].replace(‘login.aspx’)[removed]”);仍旧可以后退,...

    退出登录后点击后退问题解决方案

    能够很好的解决登录后 点击退出按钮后 仍能用浏览器后退返回的问题

    JSP和Struts解决用户退出问题

    如果在用户在退出一个Web应用后按了后退按钮浏览器把缓存中的页面呈现给用户,这会使用户产生疑惑,他们会开始担心他们的个人数据是否安全。许多Web应用强迫用户退出时关闭整个浏览器,这样,用户就无法点击后退按钮...

    toucher最新版 触屏浏览器

    前进、后退、刷新、停止、首页、页面滚动等导航按钮使用方便快捷。  · 触摸屏软键盘。快速的输入中英文,用户可根据自己喜好选择系统任意输入法进行输入。  · 触摸屏上方便快捷退出软件。提供隐藏的在触摸屏上...

    飞虎触摸屏浏览器 v1.0.rar

    前进、后退、刷新、停止、首页、页面滚动等导航按钮使用方便快捷。 2.触摸屏上方便快捷退出软件。提供隐藏的在触摸屏上退出软件的方式,并支持密码保护,防止误操作。 3.浏览器菜单隐藏与显示。可根据用户需要隐藏...

    工程硕士学位论文 基于Android+HTML5的移动Web项目高效开发探究

    先让网站能够正常工作于尽可能旧的浏览器上,然后不断为它在新型浏览器上实现更多的增强和改进。 Viewport 移动设备上的Viewport就是设备的屏幕上能用来显示网页的一块区域,即浏览器上用来显示网页的那部分区域。...

    javascript常用对象梳理

    功能:模拟用户点击浏览器上的“后退”按钮,将页面转到浏览器的上一页。 说明:仅当当前页面存在上一页时才能进行该操作。 注:IE5.5不支持该方法,Netscape6.0支持。 18. forward方法 语法格式: window....

    C#浏览器编程,学习使用

    10) 但缓存要占用磁盘大量的空间,而浏览器性能的改善只有在用户再次查看缓存中的页面时才有帮助。 11) 许多浏览器允许用户调整缓存策略。 4.3 浏览器设计(老师讲解2学时,学生设计2学时) (1)浏览器功能设计 ...

    kindle-article-reader:Kindle 实验浏览器的阅读器,使用 RSS

    在这里查看: : 它适用于任何浏览器,但由于 Kindle 的浏览器在编译现代代码和网站方面不是很有效,因此 Kindle 文章阅读器可以为您提供一种在 Kindle 上阅读网络文章的方法,而不会分心或出错。如何使用: 例如,...

    KODExplorer 芒果云-资源管理器

    - backspace后退截获浏览器事件,作为后退前一次访问的文件夹; - 搜索首字母不匹配问题 - 弹出层中的弹出层关闭,父窗口失去焦点问题。 - 代码中grunt部分代码拆分开,放到程序外面;提交到git、osc - 桌面:...

    java 写的浏览器 源代码

    //在工具栏中添加按钮组件 toolBar.add(picSave); toolBar.addSeparator(); toolBar.add(picBack); toolBar.add(picForward); toolBar.addSeparator(); toolBar.add(picView); toolBar.addSeparator(); ...

    Toucher触摸屏浏览器谷歌内核(Toucher触摸屏浏览器谷歌内核是专门针对触摸屏一体机应用而开发的,用于在触摸屏一体机上)

    前进、后退、刷新、停止、首页、页面滚动等导航按钮使用方便快捷。 · 触摸屏软键盘。快速的输入中英文,用户可根据自己喜好选择系统任意输入法进行输入。 · 软键盘与手写输入系统。用户点击网页中的输入框自动...

    react-admin-master:基于React-Antd的后台模板Demo

    登录后浏览器后退按钮可以回到登录页,登录页不登录,通过浏览器的前进又可直接进入前台。 我在登录页componentWillMount生命周期加了判断,如果已经登录,重定向到前页面(也可以设置退出登录) 技

    在vue项目中利用popstate处理页面返回的操作介绍

    需求背景:项目中需要做一个返回确认,避免用户误触返回键而退出当前页面。 原理:利用history和浏览器刷新...(这包括了后退/前进按钮操作,同时也会在onload 事件触发后初始化页面时触发)) 2、在methods里定义监

    Win10 资源管理器替代工具 FilesUWP 1.5.0.0 中文免费版.zip

    在退出测试版之前,我们将解决许多这些难题,并改善可访问性。 稍后,该项目将达到一个目的,即通过添加受追捧的高级用户功能,我们可以充分庆祝我们的核心受众。 敬请关注! 提示:FilesUWP 仅支持 Windows 10 ...

    Dreamweaver 插件集

    类似于浏览器的前进和后退按钮,但是可以指定每次前进的次数 coolborder 平时插入的表格的border又粗又难看,用这个插件插入看看边框(object) Set_IE_Scrollbars 设置IE是否出现右边的滚动条,可以适用于单个...

    70款经典Dreamweaver插件

    MX143626_GoBackorForward 类似于浏览器的前进和后退按钮,但是可以指定每次前进的次数 coolborder 平时插入的表格的border又粗又难看,用这个插件插入看看边框(object) Set_IE_Scrollbars 设置IE是否出现右边的...

    Flutter:颤振的基本知识

    扑 //关于颤振的基本知识 ...启用后退按钮 退出对话 应用栏 安全区 媒体查询 堆 溢出/剪辑行为 图像(正确使用图像的方式) 来自网址的图片 液体交换 卡视图 网格视图 神经形态设计 花费了 网页浏览器 英雄 底部导

    Dota 2 Stats-crx插件

    点击后退按钮以搜索其他用户。 跟踪您的统计数据,朋友的统计数据或您最喜欢的职业者的统计数据! 注意:为了使此扩展程序能够查看您的统计信息,您需要在Dota 2游戏客户端中启用“公开公开比赛数据”设置。 只要未...

Global site tag (gtag.js) - Google Analytics