Как заставить браузер загружать новый контент - PullRequest
0 голосов
/ 18 апреля 2020

У меня проблема с браузером (Chrome на ноутбуке и chrome на смартфоне). Я разрабатываю страницу веб-сайта (HTML, javascript) и заметил, что мой браузер всегда извлекает кэшированную информацию, не загружая страницу каждый раз, поэтому я не могу видеть изменения, внесенные в код.

Чтобы увидеть изменения, мне всегда нужно очищать веб-данные и очищать кеш браузера. Я уже проверил настройки в обоих браузерах, но все вроде бы нормально.

Я добавил эти строки, но проблема все еще там.

<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-touch-fullscreen" content="yes">
<meta name="HandheldFriendly" content="True">
<link rel="icon" href="favicon.ico" type="image/x-icon">
<meta http-equiv="cache-control" content="no-cache, must-revalidate, post-check=0, pre-check=0" />
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />

1 Ответ

0 голосов
/ 18 апреля 2020

Техника на стороне клиента

Принудительная установка новой версии в браузере, вы всегда можете добавить строку запроса в запрос и увеличить номер версии когда вы вносите серьезные изменения:

 <script src="/myJavascript.js?version=4"></script>      <-- Version Number add each time

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

Техника на стороне разработчика

С другой стороны, если вы разрабатываете веб-сайт, вы не хотите менять номер версии каждый раз, когда сохраняете изменение в своей версии для разработки.

Поэтому, когда вы разрабатываете свой сайт, неплохо было бы автоматически сгенерировать параметр строки запроса:

<!-- Development version: -->

<script>document.write('<script src="/myJavascript.js?dev=' + Math.floor(Math.random() * 100) + '"\><\/script>');</script>

Он будет генерировать строку запроса для вас каждый раз!

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