Аннулирование кэша браузера файла javascript без изменения URL src - PullRequest
0 голосов
/ 31 августа 2018

несколько файлов JS (размещенных мной) встроены в код различных веб-сайтов в виде тегов сценариев, к которым у меня нет доступа. Поэтому я не смог сделать недействительной кэш-память, сохранив отпечаток пальца в URL-адресе или с помощью параметров URL-адреса.

Файлы довольно большие, поэтому кэширование обязательно. Есть ли другие способы аннулировать кеш браузера, кроме изменения src?

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

Если это не сработает, я рассмотрю возможность сокращения заголовка expires.

Я провел другие оптимизации, такие как минимизация, использование CDN и т. Д.

Ответы [ 2 ]

0 голосов
/ 31 августа 2018

, который вызывает фактические сценарии

Почему бы просто не вернуть ответ 302 с URL точки входа?

(сам ответ 302 может быть кэширован - в вашем сценарии это должно быть на короткий период)

0 голосов
/ 31 августа 2018

Ваше решение использовать скрипт-обертку, вероятно, является оптимальным решением.

Один сетевой скрипт в DOM документа, который вызывает ваш скрипт-обертку, чтобы присоединить соответствующие скрипты при загрузке.

Вы можете использовать что-то вроде requirejs для управления этим, в которое также встроен некоторый сброс кэша в соответствии с этим: Запрет RequireJS из кэширования необходимых сценариев

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