Если страница изменится, будет ли браузер по-прежнему кэшировать http-запрос для <script>? - PullRequest
0 голосов
/ 08 ноября 2019

Пример ситуации:

Страница загружается, и на странице имеется большой тег <script>, который браузер делает http-запросом для получения js. Если пользователь нажимает на ссылку, которая меняет страницу, будет ли браузер по-прежнему получать и кэшировать запрошенный скрипт js? Или соединение закрыто и ответ игнорируется?

1 Ответ

0 голосов
/ 08 ноября 2019

Это зависит от заголовка запроса и ответа сервера, в частности от значения Cache-Control.

Если вы покинете страницу до того, как ресурс будет полностью загружен, или истечет время ожидания, объем загруженной вами информации может быть кэширован в зависимости от этого значения. Он также может быть просто отброшен - или он может сделать либо в зависимости от того, сколько времени прошло с момента вашего первого визита.

Это параметры клиента (запроса):

  • Cache-Control: max-age =
  • Cache-Control: max-stale [=]
  • Cache-Control: min-fresh =
  • Cache-Control: без кеша
  • Cache-Control: без хранилища
  • Cache-Control: нет-transform
  • Cache-Control: only-if-cached

И параметры ответа сервера:

  • Cache-Control: must-revalidate
  • Cache-Control: без кеша
  • Cache-Control: без хранилища
  • Cache-Control: без преобразования
  • Cache-Control: общедоступный
  • Cache-Control: частный
  • Cache-Control: proxy-revalidate
  • Cache-Control: max-age =
  • Cache-Control: s-maxage =

Они в основном довольно интуитивно понятны, но для получения дополнительной информации, пожалуйста, ознакомьтесь с Cache-Control на MDN и некоторой информацией, найденной на ресурсе для разработчиков в Google

...