ETag、Http缓存、304

1、HTTP的报文:浏览器和服务器间的数据传输                     浏览器请求数据发送“请求报文”给服务器                     服务器返回“响应报文”给服务器                     报文:(1) 报头header【包含缓存相关的信息】                               (2)包含数据的主体2、缓存分为:根据是否需要...
摘要由CSDN通过智能技术生成

1、HTTP的报文:浏览器和服务器间的数据传输

                     浏览器请求数据发送“请求报文”给服务器

                     服务器返回“响应报文”给服务器

                     报文:(1) 报头header【包含缓存相关的信息】

                               (2)包含数据的主体

2、缓存分为:根据是否需要重定向分为:强缓存(本地缓存)和协商缓存

                强缓存:如果生效,不经过服务器

                协商缓存:不管是否生效,经过服务器

                强缓存优先级大于协商缓存

3、缓存优点:1、减少了对数据库读操作,数据库降低压力。

                2、响应速度变快。

                3、能极大改善网页性能,提高用户体验

4、过程:客户端请求数据资源时,先获取header,判断是否为强缓存(cache-control或expires),如果是强缓存就直接从缓存取信息和资源,包括缓存header,本次请求不会与服务器通信。如果不是强缓存,浏览器会发送信息到服务器,由服务器对比header是否为协商缓存,如果是,则服务器返回新的header并且更新缓存中对应的header信息,但不返回资源内容,会告诉浏览器从缓存中取,如果不是协商缓存的话就直接返回资源内容。


5、强缓存

            expires:http1.0的规范,它的值是一个绝对时间格式的字符串,如果发送的请求时间为expires之前,本地缓存始终有效,否则从服务器获取资源。

          cache-control:http1.1的规范,主要是利用max-age来判断,他是一个相对值,资源第一次请求的事件和cache-control设定的有效值计算出一个过期时间,再用这个过期时间和当前请求时间比,过期之前就可以为强缓存,否则不是。

            cache-control优先级比expires高。Expires 表示存在时间,允许客户端在这个时间之前不去检查(发请求),等同max-age 效果。但是如果同时存在,则被Cache-Controlmax-age

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值