zoukankan      html  css  js  c++  java
  • response_用Expires头控制浏览器缓存

      服务器有很多东西是不变的,如果每次访问都重新去服务器拿,那服务器就得累死,这样情况下有把问题抛给了我们程序员,那们就控制浏览器,那些

    的资源用服务器缓存,这样就减少服务器的请求次数,我们这里用response响应头中的Expires头来控制浏览器缓存

     1     public class ResponseDemo1 extends HttpServlet {
     2 
     3 
     4     public void doGet(HttpServletRequest request, HttpServletResponse response)
     5             throws ServletException, IOException {
     6         //设置expires头,来控制浏览器缓存
     7         //注意这里一定要用当前的时间来加上你要缓存多长时间
     8         response.setDateHeader("expires", System.currentTimeMillis()+1000*3600);
     9         
    10         String data = "xxxxxxxxxxxxxxxxxxx";
    11         response.getWriter().write(data);
    12 
    13     }
    14 
    15     public void doPost(HttpServletRequest request, HttpServletResponse response)
    16             throws ServletException, IOException {
    17         doGet(request,response);
    18     }
    19 
    20 }

      发布好项目,我们看一下浏览器缓存情况,注意,在IE里看缓存最好先清除一下缓存,在浏览器历史记录点击设置,再点击查看文件,这个文件夹就是IE缓存文件夹,有好多缓存,我们给他删除了。

      删除了缓存文件,我们用httpwatch观察一下,第一次请求,

      我们在查看一下ie的缓存目录

      我当前的时间是9点50

      我们能看到他的缓存时间是10:50 也就是说我在访问的话就不用在向服务器请求了,直接拿缓存,第二次访问我们用httpwatch看一下

     

      能看到,这次没有向服务器请求,拿的是缓存。

    如果有使用请标明来源:http://www.cnblogs.com/duwenlei/
  • 相关阅读:
    SublimeText3下的Python开发环境配置
    从Evernote迁移到Wiz
    读书笔记---《即学即用财务常识120例》
    MC700 安装双系统
    Python3.5 + django1.8.5 安装”import pymysql pymysql.install_as_MySQLdb()”的解决方法
    7z压缩文件时排除指定的文件
    安装.NET Framework后程序无法启动的错误处理
    重拾Blog
    X240s安装Win7 以及如何启用ExpressCache
    新玩具---Amazon Kindle PaperWhite 2
  • 原文地址:https://www.cnblogs.com/duwenlei/p/3491829.html
Copyright © 2011-2022 走看看