Skip to content

Network

Http

Response Headers

cache-control

强缓存

  • max-age = 3153600

    最长存储时间,单位:秒

  • no-cache

    可以缓存,但是每次使用前要和服务进行确认

    代理服务器不能对资源进行缓存

  • no-store

    不进行缓存,每次都要向服务器请求资源

  • private

    只有自己浏览器可以缓存

  • public

    浏览器和代理服务都可以缓存

etag

资源表示符,资源更新后,etag也会更新。

if-none-match

协商缓存

第二次发起请求是,if-none-match 会携带 etag 的值,服务器会检查发送的etag的值。相同,返回304,使用缓存。

直接访问js文件,谷歌浏览器请求头里携带If-None-Match,苹果浏览器不会

last-modified

资源最后修改时间

If-Modified-Since

If-Modified-Since值也跟Last-Modified值一致

expires

资源过期时间,未过期前不会向服务器请求新资源

强缓存优先级大于协商缓存,即两者同时存在时,如果强缓存开启且在有效期内,则不会走协商缓存。

强缓存就是浏览器本地根据服务器设置的过期时间来判断是否使用缓存,未过期则从本地缓存里拿资源,已过期则重新请求服务器获取最新资源。

协商缓存则是浏览器本地每次都向服务器发起请求,由服务器来告诉浏览器是从缓存里拿资源还是返回最新资源给浏览器使用。