如何防止Servlet的结果被缓存?

Pra*_*ant 4 java caching servlets

如何使用Servlets停止在浏览器中缓存页面?

如果我在登录时按下浏览器按钮,我希望该会话到期.

Dea*_*mer 10

永久禁用缓存.

  // Set to expire far in the past.
  response.setHeader("Expires", "Sat, 6 May 1995 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");
Run Code Online (Sandbox Code Playgroud)

清除客户端缓存不会立即使会话过期,但会在浏览器中清除会话cookie.要使会话立即过期,您需要在服务器端jsp或servlet中明确指定.

// use session invalidate
session.invalidate();
Run Code Online (Sandbox Code Playgroud)