预取

预取是指在后台推测性地获取文档或子资源的做法,这些文档或子资源可能是用户在不久的将来可能导航到的页面。如果用户确实选择导航到该页面,这可以显著减少预取页面的加载时间。例如,预取可以用于获取“下一步”按钮链接的页面或其子资源,或者用户悬停的链接弹出窗口,或者搜索结果。

资源预取

应根据未来导航中可能需要资源的可能性来预取资源。浏览器可以自动推断某些资源,例如地址栏中的当前 URL。

这可以使用<link rel="prefetch">推测规则API仅处理导航的文档预取)

html
<link rel="prefetch" href="next.html" />

文档预取

开发人员可以通过几种不同的方式向浏览器提供应预取的导航提示

<link rel="prefetch">:

html
<link rel="prefetch" href="next.html" />

推测规则API预取

html
<script type="speculationrules">
  {
    "prefetch": [
      {
        "source": "list",
        "urls": ["next.html"]
      }
    ]
  }
</script>

推测规则 API 比 <link rel="prefetch"> 更好地处理导航的文档预取;前者专门为此目的而设计,而后者有一些限制;有关详细信息,请参阅 <link rel="prefetch">

DNS预取

DNS预取提前解析域名,通过减少请求时与域名查找相关的时间来加快加载时间。

html
<link rel="dns-prefetch" href="https://example.com/" />

另请参阅