我有一个用于显示价格的JSON文件。 JSON文件每30分钟只刷新一次服务器端,但是当客户端刷新时,他只获得相同的版本。有没有办法让JSON文件有一个到期日期,然后重新下载它,而不是继续下载它?
答案 0 :(得分:1)
如果文件自浏览器存储在其文件缓存中的日期以来未发生更改,则可以将服务器设置为返回304 - 未修改响应。基本上,当客户端请求文档时,它可以发送" If-Modified-Since"请求标头中的日期。如果文件自该日期以来没有更改,则服务器将使用304 - Not Modified响应进行响应,客户端将使用缓存版本。
答案 1 :(得分:0)
将它放在您通过ajax调用的php文件的顶部:
header("Cache-Control: max-age=1800");
header("Cache-Control: public", false);
这将让浏览器将文件缓存1800秒。
如果您使用的是jQuery,请不要忘记打开缓存属性:
$.ajax({url:"yourfile.php",cache:true})