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

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

问题描述

如何使用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();

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

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