Javascript 缓存破坏不起作用?谷歌浏览器?
为什么缓存爆破不为我工作,而我不点击F5 在webpack生成的index.html中,我有一个javascript文件(包含我的reactjs站点) 现在在制作中,我有这样的东西Javascript 缓存破坏不起作用?谷歌浏览器?,javascript,google-chrome,caching,Javascript,Google Chrome,Caching,为什么缓存爆破不为我工作,而我不点击F5 在webpack生成的index.html中,我有一个javascript文件(包含我的reactjs站点) 现在在制作中,我有这样的东西 <script type="text/javascript" src="/main.b2c9dad20992aaf2f272.js"></script></body> 我刚刚构建了一个新文件,在index.html中 <script type="text/java
<script type="text/javascript" src="/main.b2c9dad20992aaf2f272.js"></script></body>
我刚刚构建了一个新文件,在index.html中
<script type="text/javascript" src="/main.087b578d2cde3ed8379f.js"></script></body>
然而,我测试它的每个人都在不断地获取他们的网站缓存版本。我接触过的大多数人都在使用chrome,所以我不能说这只是chrome的东西还是全浏览器的东西。chrome似乎对缓存非常热衷。在Chrome决定检查新文件之前,我推出了一些需要多次硬刷新(Ctrl+F5)的更新js文件 将以下标头添加到服务器响应中导致需要清除其缓存的用户的帮助台通知单奇迹般地减少
Cache-Control: must-revalidate
所以这需要放在我的服务器响应上?我使用的是asp.net内核,所以还不知道该放在哪里。是否必须重新验证以查看是否存在新版本?如果是,请使用它,否则请使用缓存版本?是的,这将在web服务器设置中完成。在IIS中(我假设,因为asp.net),您可以为服务器或特定站点的所有请求添加响应头。是的,我正在使用IIS,如何执行此操作?如果我回忆正确,Chrome会将文件缓存的日期发送到服务器,如果在缓存后对其进行了修改,则服务器会响应更新的文件。(这是该过程的基本要点)在IIS中,您可以将其添加到HTTP响应头模块中。