如何在后退按钮点击过期页面?

时间:2012-12-17 13:10:30

标签: html internet-explorer jsp firefox tomcat

我在jsp页面中添加了以下元标记

<html>
<head>
<title>xyz</title>
<link type='text/css' rel="stylesheet" href="sdsds/sdsd"/>
<meta content="max-age=0" http-equiv="cache-control">
<meta content="no-store" http-equiv="cache-control">
<meta content="-1" http-equiv="expires">
<meta content="Tue, 01 Jan 1980 1:00:00 GMT" http-equiv="expires">
<meta content="no-cache" http-equiv="pragma">
</head>
<body><h1>jsdsdsds</h1>
<a href="abc">click me</a>
</body>
</html>

通过点击链接“点击我”导航后,我正在打开一个新页面。当我点击后退按钮它正在工作..我希望页面过期.. 注意:在两个jsp页面中我添加了相同的元标记。 我尝试添加这个

<%@ page import="java.lang.*" %>
<%
// Set to expire far in the past.
response.setHeader("Expires", "Sat, 6 May 1971 12:00:00 GMT");
// Set standard HTTP/1.1 no-cache headers.
response.setHeader("Cache-Control", "no-store, no-cache, must-revalidate");
// Set IE extended HTTP/1.1 no-cache headers (use addHeader).
response.addHeader("Cache-Control", "post-check=0, pre-check=0");
// Set standard HTTP/1.0 no-cache header.
response.setHeader("Pragma", "no-cache");
response.setDateHeader ("Expires", 0); //prevents caching at the proxy server
%>

以上HTML和内部Head ..但我可以看到后页。, 在mozilla firefox 10.0和IE8中测试过 有什么建议吗?

3 个答案:

答案 0 :(得分:2)

试试这个

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
   <html xmlns="http://www.w3.org/1999/xhtml" >
  <title>Untitled Page</title>
  <script type = "text/javascript" >
  function changeHashOnLoad() {
 window.location.href += "#";
 setTimeout("changeHashAgain()", "50"); 
 }

function changeHashAgain() {
window.location.href += "1";
}

var storedHash = window.location.hash;
 window.setInterval(function () {
 if (window.location.hash != storedHash) {
     window.location.hash = storedHash;
}
}, 50);


</script>
 </head>
 <body onload="changeHashOnLoad(); ">
  Try to hit back!
 </body>
 </html>`

答案 1 :(得分:0)

只要不涉及会话,您就无法使浏览器的后退按钮上的页面过期。它可以用于反向浏览许多用户所执行的页面,因此这取决于您希望用户浏览您的站点的方式。你实际上需要处理浏览器的后退按钮。有几种方法可以做到这一点。 突出的一个是在javascript中使用这个代码:`

window.history.forward();

` 但它会将您的后退请求转发到历史记录中的当前页面 对我有用的是:

<script type="text/javascript">
function noBack(){
            location.replace(logouturl);
            window.location="logouturl";
}

HTML

<input type="button" value="SignOut" onclick="noBack()" align="middle">

答案 2 :(得分:-1)

试试这个

 <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
 <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE">
 <META HTTP-EQUIV="EXPIRES" CONTENT="0">

Check this link它对您有帮助......