简体   繁体   English

注销后不要回到jsp中的上一页

[英]after logout do not go back to previous page in jsp

To prevent user to go back after logout i used following code in home.jsp page 为了防止用户在注销后返回,我在home.jsp页面中使用了以下代码

<% 
if (session.getAttribute("authe") != null && session.getAttribute("authe").equals(true)) {

}
else {  
    response.sendRedirect("login.jsp");
}
%>

and I invalidated the session in logout.jsp . 我在logout.jsp会话无效。

It worked fine but when I pressed back button after logout it still goes to home page but after reloading that home page it moves to the login page. 它工作正常但是当我在注销后按下后退按钮它仍然进入主页但是在重新加载该主页后它移动到登录页面。 I thought it it due to the browser default action. 我认为这是由于浏览器的默认操作。

How to make it to work effectively? 如何让它有效地工作?

In home.jsp put header as no-cache : home.jsp中将header设置为no-cache

<%
   response.addHeader("Cache-Control", "no-cache,no-store,private,must-revalidate,max-stale=0,post-check=0,pre-check=0"); 
   response.addHeader("Pragma", "no-cache"); 
   response.addDateHeader ("Expires", 0);
 %>

You can use: 您可以使用:

<%
try {
    response.setHeader("Cache-Control","no-cache");
    response.setHeader("Cache-Control","no-store");
    response.setHeader("Pragma","no-cache");
    response.setDateHeader ("Expires", 0);
    if (session.getAttribute("userid")==null) {
        response.sendRediredirect("login.jsp");
    }
    else {}
}
catch(Exception ex) {
    out.println(ex);
}
%>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM