gpt4 book ai didi

javascript - 强制客户端浏览器重新下载我们的 asp.net web 应用程序的 .css 和 .js 文件的优雅方式(不完全禁用缓存)

转载 作者:行者123 更新时间:2023-11-29 19:51:30 25 4
gpt4 key购买 nike

我们的 asp.net 网络应用程序允许我们的(大型).css 和 .js 文件由客户端浏览器缓存以提高性能。

但是每当我们部署一个新版本时,我们都会接到用户的电话,说页面看起来很乱并且充满了 javascript 错误。事实证明,他们的浏览器并没有重新下载更改后的 .css 和 .js 文件。 Ctrl-F5 总能修复它。

有没有办法在升级部署后强制重新下载,而不将其设置为不缓存(从而减慢我们的应用程序速度)?

我发现了这一点(每次部署都手动更改对每个文件的引用): How do I force a given file to expire in the cache?

和这个(同样的事情,但在每个页面加载时计算校验和): Needed advice on how to implement js/css versioning

但肯定有比这更合理的解决方案......?

最佳答案

在文件中设置版本号对我们来说效果很好:

<script type="text/javascript" src="somefile.js?v=1.0"></script>

只要您在每次“发布”时更改版本号,浏览器就会认为它是一个新文件。

您可以通过简单地在全局文件(如配置文件或其他文件)中包含一个版本号,然后在您希望的每个脚本/css 标记上设置变量来做到这一点。

关于javascript - 强制客户端浏览器重新下载我们的 asp.net web 应用程序的 .css 和 .js 文件的优雅方式(不完全禁用缓存),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17626830/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com