Как использовать ссылку rel = 'preload' с документом HTML? - PullRequest
0 голосов
/ 18 декабря 2018

У меня есть две конечные точки, /huge_html и /huge_html2, которые обслуживают один и тот же документ HTML размером ~ 10 МБ.(Обратите внимание: что это неполный HTML и просто <div> с тысячами <p> тегов)

Я хотел проверить, является ли предварительная загрузка эффективным способом загрузки HTML, который, я знаю, я определенно собираюсь fetch позже, но предварительно загружается раньше в цикле загрузки страницы.Тем не менее, при следующей настройке я все равно получаю примерно эквивалентную загрузку ответов HTML.

Я попробовал следующее <link> в своем HTML-документе:

<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.,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...