zoukankan      html  css  js  c++  java
  • 浏览器的缓存机制

    这两天,拾前人牙慧了解了下浏览器的缓存机制,备忘一下。

    一般来说,浏览器都是有缓存的,缓存机制可以通过http请求协议,和html的meta标签来设定,我们前端it牛就只关注后者吧,前者需要服务端或者本地程序自己定义。

      这种方式用一句广告词来说就是”so easy!“,只需要如下代码:

    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
    

      meta标签很牛叉,它提供了很多属性来定义页面的文档信息,包括设置搜索引擎关键字啊,编码啊,作者啊,描述啊,语言啊等等,同样也提供了修改http信息的属性。比如上面的示例就是http请求协议的缓存定义no-cache,无缓存。其实我们可以从语义上来分析:http-equiv 这个属性服务器在处理的时候会把它自动加载到浏览器的头信息里。比如我如下设置:

    <meta http-equiv="charset" content="utf-8">
    <meta http-equiv="expires" content="30 Nov 2012">
    

      那么你就设置了页面的过期时间和页面编码,浏览器的头信息就会有下面这样的信息:

    content-type: text/html
    charset:utf-8
    expires:30 Nov 2012

      值得一提的是 expires貌似是http1.0的东西,对现在http1.1来说貌似作用不大。

    附上一张别人的两张图,描述一下浏览器请求的原理:

    第一次请求:

    再次请求:

  • 相关阅读:
    在UITableView顶部制作简单的UISegmentControl实例方法
    iOS9 适配网络请求,适配分享失败,适配无法正常跳转到客户端
    iOS页面切换动画实现方式。
    Springboot-Dockerfile指令
    Springboot-Docker-Dockerfile
    Springboot-Docker-1
    SpringBoot-Security
    SpringBoot-MongoDB
    SpringBoot-RabbitMQ
    SpringBoot-Memcached
  • 原文地址:https://www.cnblogs.com/cczw/p/2795996.html
Copyright © 2011-2022 走看看