使用AJAX禁用php和html上的缓存

时间:2014-11-05 17:44:40

标签: php html caching

我在我的网站和我的网站上使用AJAX,在AJAX准备好文档之后加载了一些部分,这些部分是动态的。

示例一部分:Hello#USERNAME#每个ID都不同,当我登录到第一个ID时显示我的用户名但登录到第二个ID时此名称不会更改并显示第一个ID用户名。

我通过上面的代码在所有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");
?>

但缓存未被禁用。

1 个答案:

答案 0 :(得分:1)

我认为这个问题有点重复。但是,如果要确保在ajax调用上不会发生缓存,则可以在您正在访问的URL的末尾附加时间戳。

JavaScript AJAX准备中的示例:

var time_stamp = new Date().getTime();
var myurl = "url_here.php?timestamp=" + time_stamp;
jQuery.get(myurl, /* more parameters */);
/* other relevant code */

以下是Google的其他一些消息来源:

另一件需要考虑的事情是它可能不是缓存问题。您是否正确清除任何会话/ cookie? (如果您正在使用它们)