如何防止Servlets的结果被缓存? [英] How to prevent the result of Servlets from being cached?

查看:27
本文介绍了如何防止Servlets的结果被缓存?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

How can I stop caching of pages in browser using Servlets?

如果我在登录时按浏览器的后退按钮,我希望该会话应该过期.

I want that session should expire if I press back button of browser when i am logged in.

推荐答案

永久禁用缓存.

  // 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");

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

Clearing the client cache would not expire session immediately,but clears session cookies in the browser. To make the session expire immediately, you need to explicitly specify in server side jsp or servlet.

// use session invalidate
session.invalidate();

这篇关于如何防止Servlets的结果被缓存?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆