IIS / AngularJS Single Page Application-как предотвратить кэширование страниц одного индекса.html при навигации в приложении



Мне нужно сделать мое приложение (SPA), чтобы не кэшировать индекс.html через действия навигации по страницам.



Мое приложение имеет перебор кэша, но оно работает только тогда, когда я обновляю (перезагружаю) индекс.формат html.



Как заставить приложение не кэшировать индекс.HTML при навигации в мое приложение и обновить индекс.html на каждой странице навигации клик или действие?



Вот мой существующий индекс сниппета.html код:



<!DOCTYPE html>
<html lang="en" manifest="sw.appcache">
<head>
<meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate" />
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="0" />


Св.файл appcache содержание



CACHE MANIFEST
NETWORK:
*


Редактировать:



Следующее дополнение к тегу script в моем индексе.силами HTML-страницу, чтобы перезагрузить каждый раз, когда изменения URL-адреса.



 window.onhashchange = function() {
var parts = window.location.href.split("#");
window.location.href = window.location.protocol + "//" + window.location.host + "?t=" + (new Date()).getTime() + "#" + parts[1];

}
599   1  

1 ответ:

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

Лучший способ-манипулировать URL-адресом с помощью параметра запроса.

Вместо http://example.com/mypage.html
Использование: http://example.com/mypage.html?timestamp

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

Это также хороший трюк, чтобы предотвратить браузеры от кэширования CSS, JS, изображений и т.д.

Comments

    Ничего не найдено.