小编典典

如何防止浏览器缓存json文件

json

所以我正在做这个小项目,但是在捕捉方面有些麻烦。不能正常工作的一件事是,浏览器一直在缓存包含保存数据的json文件,当我在其他地方更新json时,浏览器会返回到已缓存的json文件的旧版本并读取该旧版本。不幸的是我不想要那个。我根本不希望浏览器完全缓存文件,以便每次加载页面时,它将向服务器请求json文件并根据该文件而不是已缓存的任何文件进行操作。但是,我希望能够缓存页面上的所有其他内容,但是如果必须为此牺牲一些内容,那么我愿意为此做出牺牲。一世’

<script src="mySaveFiles.json" cache="no">

或类似的东西可以帮助我实现我在说的…帮助?


阅读 873

收藏
2020-07-27

共1个答案

小编典典

最简单的方法是在源字符串后面附加一些随机参数,该参数在服务器端会被忽略

<script src="mySaveFiles.json?nocache=123" ></script>

一种解决方案是使用JavaScript生成脚本元素,并像这样添加当前时间:

var el = document.createElement( script );
el.src = 'mySaveFiles.json?nocache=' + (new Date()).getTime();
document.head.appendChild( el );

这样,浏览器将永远不会缓存JSON文件,因为在每次调用中它似乎是一个不同的文件(由于参数)。

2020-07-27