Я разрабатываю Javascript для веб-сайта www.example.com, и Chrome продолжает кэшировать более ранние версии моего кода.Я могу непрерывно очищать кеш, но это становится временным приемником.Любые другие варианты?
Если вы не хотите менять код своей веб-страницы.Вы можете просто открыть инструменты разработчика в Google Chrome.Сочетание клавиш: Ctrl + Shift + i на окнах.
В правом нижнем углу вы найдете механизм, который приведет вас к настройкам.Установите флажок «отключить кэш», и все готово.
Я обычно нажимаю: Ctrl + Shift + R, чтобы очистить кэш. Это я считаю самым легким.
Это также работает:
<meta http-equiv="no-cache"> <meta http-equiv="Expires" content="-1"> <meta http-equiv="Cache-Control" content="no-cache">
Если вы используете окно инкогнито для отладки, в нем нет кэшированных данных.Просто и не требует изменений в настройках вашего браузера.
Я делаю это сам для развития. Я использую CTRL-F5. Это как силовое обновление. Это обновляет страницу, включая повторную загрузку любых файлов JS или CSS, на которые есть ссылки, даже если они были кэшированы.
Попробуйте установить HTTP-заголовок:
Cache-Control: no-cache, no-store
Или:
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE, NO-STORE">
Но это следует использовать только во время разработки.
вы можете добавить в .htaccess правило, запрещающее кэширование определенного файла или определенного расширения
<FilesMatch "script.js$"> Header unset Cache-Control Header unset Expires Header unset Last-Modified FileETag None Header unset Pragma </FilesMatch>
или для всех .js & css
<FilesMatch "\.(js|css)$">
Добавьте эти заголовки к своим веб-страницам во время разработки:
<META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"> <META HTTP-EQUIV="PRAGMA" CONTENT="NO-CACHE">
Или вы можете настроить свой веб-сервер так, чтобы информация без кэширования помещалась в заголовки http (во время разработки).