如何在HTML文档中使用link rel ='preload'?

时间:2018-12-18 06:55:33

标签: html5 fetch preload

我有两个端点/huge_html/huge_html2,它们服务于相同的〜10MB HTML文档。 (请注意:它是不完整的HTML,只是一个带有成千上万个<div>标签的<p>

我想测试预加载是否是一种有效的HTML加载方法,我知道我肯定以后会去fetch,但是要在页面加载周期中更早地进行预加载。但是,通过以下设置,我仍然获得与HTML响应相当的负载。

我在HTML文档中尝试了以下<link>

<link rel="preload" href="/huge_html" as="document" />

然后,我有以下js:

function sleep(ms){
    return new Promise(resolve => setTimeout(resolve, ms));
}

async function setup(path) {
    await sleep(5000);
    let response = await fetch(path)
};

Promise.all([setup('/huge_html'), setup('/huge_html2')]) 

在这种情况下,两个/huge_html响应都以几乎相同的响应时间返回,而我预计/huge_html2会更慢,因为/huge_html被标记为预加载。

我已经阅读了MDN和其他有关preload行为的文章,但对于为什么我无法获得preload在HTML上运行的可重复测试用例,我仍然感到困惑文件。

0 个答案:

没有答案