Как запретить браузеру загружать js из кеша памяти по диапазону? - PullRequest
1 голос
/ 08 мая 2019

Вчера вечером я открыл свой сайт в Chrome, затем закрыл эту вкладку, но не закрыл браузер. Сегодня я не смог открыть свой сайт в новой вкладке, потому что jQuery (не использует CDN) сталкивается с синтаксической ошибкой: неожиданный конец ввода.

Мой сайт всегда сталкивается с этой ошибкой, независимо от того, сколько раз я обновляюсь. Но ошибка не повторилась после жесткого обновления.

Эта проблема встречается много раз в последние месяцы.

Я проверил Chrome devtool, он говорит, что мой jquery.min.js загружен из кеша памяти. И это не целый файл, а содержит только часть библиотеки jquery. Вот почему я получил синтаксическую ошибку.

Я провел исследование в Google:

Время жизни кеша памяти привязано к времени жизни процесса рендеринга, что примерно соответствует вкладке.

Так что, если я создам новую вкладку для посещения моего сайта, то, разумеется, jQuery не должен загружаться из кэша памяти.

Я ожидаю, что браузер не загрузит мои файлы из памяти снова, если я зайду на сайт в новой вкладке.

Что я могу сделать, чтобы найти источник проблемы и исправить это?

РЕДАКТИРОВАТЬ (2019-05-13):

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

Это тот запрос: Request info

См. Код состояния 206 Частичное содержимое (из кэша памяти).

И я понятия не имею, почему мой заголовок запроса содержит поле Range.

1 Ответ

0 голосов
/ 08 мая 2019

Вы не можете обнаружить newtab в браузере и загрузить свой jquery.min.js, но вы можете избежать загрузки из кэша, добавив метку времени в суффикс вашей библиотеки следующим образом.

http://yoursite.com/lib/js/jquery.min.js?1557301884

Вы можете достичь этого двумя способами

  • Случай: 1 Если вы используете средства рендеринга страниц на стороне сервера (PHP, JSP), просто напечатайте метку времени

  • Дело: 2 Если на стороне клиента имеется в виду какой-то материал JavaScript, который вы должны сделать

...