Отключить очистку кеша в динамически связанных внешних файлах Javascript?

При загрузке контента через AJAX, который содержит внешне связанный файл Javascript, или при использовании вызова функции jQuery.getScript() к связанным файлам Javascript добавляется параметр очистки кеша, который предотвращает кэширование файла браузером.

Таким образом, вместо того, чтобы писать что-то вроде <script src="/js/foo.js">, он пишет что-то вроде <script src="/js/foo.js?_=ts2477874287">, заставляя скрипт каждый раз загружаться заново.

Есть ли способ отключить это и кэшировать файл при загрузке?


person Highway of Life    schedule 04.10.2011    source источник


Ответы (1)


Я не знаю о getScript, но cache — это параметр, который вы можете установить в карте параметров .ajax(). По умолчанию для скриптов это false, но вы можете изменить его на true. При значении false он не будет добавлять строку запроса на очистку кеша.

[обновляется по каждому комментарию]

person Greg Pettit    schedule 04.10.2011
comment
Я думаю, что у вас есть правда/ложь в обратном порядке. Значение по умолчанию для кеша — true, false для dataType 'script' и 'jsonp'. Таким образом, переворачивая его на true, он должен избегать параметра очистки кеша? -- Кажется, у них нет способа сделать это в getScript, и, к сожалению, это все еще не помогает мне понять, как переопределить общие теги <script> (т.е. не загружаемые через вызов ajax), поэтому единственное, что я могу в настоящее время я думаю, что мне придется использовать jQuery.ajax с кешем, установленным на true, для всего динамически загружаемого контента со связанными внешними файлами JS. - person Highway of Life; 04.10.2011
comment
Да, у меня было это прямо в голове, но я записал это перевёрнутым. Спасибо! Я не понимаю, что вы имеете в виду под общими тегами сценария, но это, вероятно, на мне. - person Greg Pettit; 04.10.2011
comment
Нет, это на мне. Я не был ясен. Предположим, я использую jquery.load('mypage.html');. Mypage.html содержит HTML, а также связанный скрипт: <script src="./js/foo.js">, но даже он получает параметр очистки кеша. - person Highway of Life; 05.10.2011
comment
О, вот это уже интересно. Увы, я ничего об этом не знаю. - person Greg Pettit; 05.10.2011