我正在使用java框架开发一个简单的Web应用程序,我正在做
我开发了这个网络应用程序,但我遇到了问题
问题:
点击我的网络应用的logout
链接后,我将重定向到login
页面,但如果用户点击浏览器的后退按钮,则会返回安全页面我不想要的。
也使用session
但在注销时我正在调用控制器:
public static void noCache(final Response response) {
response.setHeader("Cache-Control",
"no-cache, no-store, must-revalidate, max-age=0, post-check=0, pre-check=0"); // HTTP 1.1
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setHeader("EXPIRES", "0"); // Proxies
}
public static Result logou() {
session().clear();
flash("success", Messages.get("youve.been.logged.out"));
noCache(response());
return redirect(routes.signin.page());
}
退出链接:
<a href="@routes.signin.logou">Logout</a>
但它会返回并显示用户信息。
实际上我的网络应用程序存储缓存,当用户点击后退按钮时,它正在调用缓存副本,这就是为什么我调用了noCache
方法但仍然无法正常工作
给我一些解决这个问题的想法?
答案 0 :(得分:-1)
Jsp页面添加代码
<%
response.setHeader("Cache-Control","no-cache"); //HTTP 1.1
response.setHeader("Pragma","no-cache"); //HTTP 1.0
response.setHeader("Cache-Control","no-store");
response.setDateHeader ("Expires", 0);
%>
<%@ page language="java" contentType="text/html; charset=ISO-8859-1" pageEncoding="ISO- 8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">