预取
预取是指在后台推测性地获取用户未来可能访问的文档或子资源。如果用户选择导航到预取的页面,这可以显著减少加载时间。例如,预取可以用于取“下一页”按钮链接的页面或其子资源,或用户悬停的链接弹出窗口,或者是搜索结果。
资源预取
资源应该根据它们在未来导航中被需要的可能性进行预取。浏览器可以自动推断某些资源,例如地址栏中的当前 URL。
这可以使用 <link rel="prefetch">
(推测规则 API 仅处理导航的文档预取)来完成:
html
<link rel="prefetch" href="next.html" />
文档预取
开发人员可以通过几种不同的方式向浏览器提供应预取导航的提示:
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/" />