1

我正在使用带有 java 的 play 框架开发一个简单的 Web 应用程序,我正在做

  1. 登录
  2. 登出
  3. 用户信息页面

我开发了那个网络应用程序,但我遇到了问题

问题

单击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>

但它会返回并显示用户信息。

实际上,当用户单击后退按钮时,我的 Web 应用程序正在存储缓存,它正在调用缓存副本,这就是我调用noCache方法但仍然无法正常工作的原因

给我一些想法来解决这个问题?

4

1 回答 1

-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">
于 2013-10-04T07:57:03.470 回答