示例情况:
该页面正在加载,并且页面中有一个很大的<script>
标签,浏览器发出http请求来获取js。如果用户单击更改页面的链接,浏览器是否仍会接收并缓存请求的js脚本?还是连接已关闭并且响应被忽略?
这取决于请求的标头和服务器的响应,特别是Cache-Control
的值。
如果您在资源完全加载之前离开页面或资源超时,则根据该值可能会缓存您可以下载的数量。也可以将其简单地丢弃-或根据自您初次访问以来已经花费了多长时间来执行此操作。
这些是客户端(请求)选项:
和服务器响应选项:
它们大部分都是非常直观的,但是有关更多信息,请查看Cache-Control on MDN和在developers resource on Google中找到的一些信息