Как использовать <link preload> для получения ответа ajax - PullRequest
0 голосов
/ 24 января 2019

Google Pagespeed insights подсказывает мне

Подумайте об использовании <link rel=preload>, чтобы расставить приоритеты при получении ресурсов, которые в данный момент запрашиваются позже при загрузке страницы.

Для следующего URL /users, который вызывается только один раз через ajax

  $.ajax({
      url:'/user',
      success: function success(result){
        cb(result)
      }
  })

Я попытался <link rel="preload" href="/user" as="fetch" crossorigin="anonymous">, но он не работает и выдает следующее предупреждение в консоли:

Предварительная загрузкадля 'https://www.example.com/user' найдено, но не используется, поскольку заголовки запроса не совпадают.

Ресурс https://www.example.com/user был предварительно загружен с использованием предварительной загрузки ссылки, но не использовался в течение нескольких секунд послесобытие загрузки окна.Пожалуйста, убедитесь, что оно имеет соответствующее значение as и предварительно загружено намеренно.

1 Ответ

0 голосов
/ 08 августа 2019

столкнулся с той же проблемой. Вы должны тщательно проверить все заголовки. Если любой заголовков запроса отличается, Chrome выбросит предварительную нагрузку. (В моем случае заголовок Accept был другим. Не думаю, что это будет иметь значение, но когда я изменил их для соответствия, он начал работать!)

...