Servlet技术浅析(八)之-----浏览器缓存浅析

来源:互联网 发布:电话轰炸机淘宝叫什么 编辑:程序博客网 时间:2024/06/05 04:55

1、浏览器缓存简述:

      许多浏览器为了能够快速向用户展示所请求的页面,会把来自服务器端的页面存放在客户端的缓存中,如果用户多次请求访问服务器端的同一个网页,那么浏览器只需从缓存中获取该网页,而不需在请求访问远程服务器上的网页。

2、缓存使用范围:

      浏览器端的缓存技术适用于保存服务器端的静态网页,以及不包含敏感数据的网页。

3、以下两种情况,服务器端不希望网页被浏览器缓存:

(1)网页包含随时会被更新的静态内容。如果浏览器向用户展示本地缓存中的网页,有可能展示的是过期网页。
(2)网页中包含敏感数据,如特定用户的银行账号信息,或者电子邮件的内容。如果浏览器把网页保存在本地了,有可能被其他未授权的用户,访问到该页。

4、解决方法:

服务器端的HttpServlet可通过设置特定HTTP响应头,来禁止客户端缓存网页,如
response 设置http响应头控制浏览器禁止缓存当前文档内容

    response.setDateHeader("Expries", -1);  
    response.setHeader("Cache-Control", "no-cache");  
    response.setHeader("Pragma", "no-cache");  


Pragma选项适用于使用HTTP 1.0协议的浏览器,
在HTTP 1.1中,”Cache-Control“选项用来决定客户端是否可以缓存网页,如果取值为”no-cache“,那么客户端不会把Servlet生成的网页保存在本地缓存中。

HTTP 1.0 和 HTTP 1.1 都支持”Expries“选项,因此所有的浏览器都能识别该选项。”Expries“用于设置网页过期时间,如果为0,就表示立即过期;




0 0
原创粉丝点击