我有一个名为'images.xml'的xml文件。每当有人将新图像上传到服务器时,它就会被php脚本修改。我也使用ajax通过该文件。
xmlhttp.open("GET", "images.xml", true);
xmlhttp.onreadystatechange = handleStateChange;
xmlhttp.send(null);
但由于某种原因,“xmlhttp.responseXML”存储的文件版本与当前用户会话开始时的版本相同。因此,如果用户上传新图像,即使xml文件由php更新,ajax也会在更新之前检索该文件的版本。
PS
我是ajax的新手,所以我可能会遗漏一些明显的东西。
答案 0 :(得分:3)
可能是因为缓存。您需要在URL中附加查询参数,以便它始终不同。
通常的做法是在这种情况下附加当前的UNIX时间戳,以毫秒为单位。
var url = 'images.xml?nocache=' + Date.now();