一尘不染

JavaScript通过参数清除缓存

javascript

我们希望在生产部署中缓存崩溃,但不要浪费大量时间来弄清楚这样做的系统。我的想法是将具有当前版本号的paras应用于css和js文件的末尾:

<link rel="stylesheet" href="base_url.com/file.css?v=1.123"/>

两个问题:这会有效地打破缓存吗?由于参数表明这是动态内容,因此该参数会导致浏览器从不缓存该URL的响应吗?


阅读 321

收藏
2020-04-25

共1个答案

一尘不染

参数?v=1.123表示查询字符串,因此浏览器将认为这是从到的新路径?v=1.0。因此导致它从文件而不是从缓存加载。如你所愿。

而且,浏览器将假定下次调用时源将保持不变,?v=1.123
使用该字符串对其进行缓存。因此,它将保留在缓存中,但是服务器已设置,直到您移动到?v=1.124诸如此类。

2020-04-25