Я использую AJAX для своего веб-сайта и моего сайта, часть загрузки части после того, как документ готов к работе AJAX, и эти части являются динамическими.
Пример одной части: Hello # USERNAME #, это разные для каждого идентификатора. Когда я вхожу в первый идентификатор, показываю свое имя пользователя, но при входе во второй идентификатор это имя не изменяется и отображается первое имя пользователя.
Я отключил кеш на всех страницах PHP, используя код выше:
<?php header("Cache-Control: no-store, no-cache, must-revalidate, max-age=0"); header("Cache-Control: post-check=0, pre-check=0", false); header("Pragma: no-cache"); ?>
Но кеш не отключен.
Я считаю, что этот вопрос немного дублирован. Однако, если вы хотите, чтобы кеширование не выполнялось при вызовах ajax, вы можете добавить временную метку в конец URL-адреса, который вы нажимаете.
Пример в вашем JavaScript AJAX prep:
var time_stamp = new Date().getTime(); var myurl = "url_here.php?timestamp=" + time_stamp; jQuery.get(myurl, /* more parameters */); /* other relevant code */
Вот некоторые другие источники из Google:
Другое дело, что это может быть не проблема кеширования. Вы правильно очищаете какие-либо сеансы / файлы cookie? (Если вы их используете)