主题
浏览器缓存与资源加载
普通加载、刷新与绕过缓存
普通加载可直接命中新鲜响应。刷新通常要求重新验证部分资源,强制刷新通常让浏览器跳过部分 HTTP 缓存读取。
刷新细节取决于浏览器。DevTools 的禁用缓存和 Service Worker 自行返回缓存是不同机制。
Service Worker 与 Cache Storage
Service Worker 可拦截受控页面的请求并选择网络、缓存或自定义响应。Cache Storage 存放脚本显式管理的 Request 和 Response。
Cache Storage 不会按 HTTP 新鲜度自动更新条目。版本切换、淘汰和离线回退由应用策略决定。
DNS 预解析与预连接
dns-prefetch 提前解析域名。preconnect 还可提前建立连接,HTTPS 通常包括安全握手。
这些是浏览器可选择采用的提示。预连接占用资源,适合即将访问的关键源。
preload、prefetch 与资源加载时机
preload 提示尽早获取当前页面所需资源,需正确标记 as,并匹配实际使用时的跨源模式。prefetch 提示低优先级获取可能在后续使用的资源。
preload 本身不执行脚本或应用样式。请求属性不匹配可能引起重复下载。
