Мне нужен клиент (с помощью javascript), чтобы аннулировать страницу, которую она имеет, и по существу получить новую версию?
Я думал, что могу сделать все это с заголовками: Invalidating cached content, If-Modified Headers?
Если нет способа обновить браузерную версию текущей кешированной версии, не создавая новый запрос (через новый URL) … так, чтобы тот же исходный URL-запрос мог использоваться для просмотра обновленного контента?
Вы не можете сделать это с помощью javascript, чтобы решить вашу проблему или использовать метод POST вместо GET или использовать трюк случайных параметров nocache :
Если вам нужна дополнительная информация, см.: Возможно ли кэшировать методы POST в HTTP?
Если вы хотите перезагрузить текущую страницу, которую вы можете сделать:
location.reload(true);
В противном случае «традиционным» способом является добавление случайного запроса на конец
'...?rnd=' + Math.random();
Когда вы ссылаетесь на страницу, добавьте случайную переменную в конец. Например:
document.location.href = 'mypage.html?randomVar=454068934';
Это обеспечит не кэшированную версию. Я рекомендую использовать созданные javascript подсказки.
что я сделал, это передать случайный параметр в URL. т.е. если мне нужно получить products.php, я вызываю его с помощью products.php? rand = 23443545. Таким образом, кеш не мешает.