【问题标题】:If the page changes, will the browser still cache an http request for a <script>?如果页面发生变化,浏览器还会缓存 <script> 的 http 请求吗?
【发布时间】:2019-11-07 23:35:25
【问题描述】:

示例情况:

页面正在加载,页面中有一个大的&lt;script&gt;标签,浏览器发出http请求来获取js。如果用户点击了改变页面的链接,浏览器还会接收并缓存请求的js脚本吗?还是连接关闭而忽略响应?

【问题讨论】:

    标签: javascript browser httprequest browser-cache


    【解决方案1】:

    这取决于请求的头部和服务器的响应,具体是Cache-Control的值。

    如果您在资源完全加载或超时之前离开页面,则您能够下载的数量可能会根据该值被缓存。它也可能被简单地丢弃 - 或者它可能会根据您首次访问以来的时间长度而定。

    这些是客户端(请求)选项:

    • 缓存控制:max-age=
    • 缓存控制:max-stale[=]
    • 缓存控制:min-fresh=
    • 缓存控制:无缓存
    • 缓存控制:无存储
    • 缓存控制:无转换
    • 缓存控制:仅当缓存时

    以及服务器响应选项:

    • 缓存控制:必须重新验证
    • 缓存控制:无缓存
    • 缓存控制:无存储
    • 缓存控制:无转换
    • 缓存控制:公共
    • 缓存控制:私有
    • 缓存控制:代理重新验证
    • 缓存控制:max-age=
    • 缓存控制:s-maxage=

    它们大多非常直观,但要了解更多信息,请查看Cache-Control on MDNdevelopers resource on Google 中的一些信息

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-13
      • 1970-01-01
      • 2020-01-25
      • 1970-01-01
      • 2020-06-07
      • 2018-01-18
      相关资源
      最近更新 更多