javascript - 部署新版本时清除浏览器缓存

标签 javascript asp.net angularjs browser-cache

我有一个 ASP.Net MVC + angular 网络应用程序。大约 500 多名用户正在使用该应用程序。

问题是每当我们进行新的发布/发布时,我们都必须让用户清除他们的浏览器缓存。这对用户来说很烦人。

其他网站(如 facebook 等)在更新其应用程序/站点时如何管理浏览器缓存,因为我们不会经常清除浏览器缓存。

有没有办法在有新版本时自动清除浏览器缓存。

最佳答案

借助 ASP.Net Core MVC,您可以为脚本文件使用 asp-append-version TagHelper。它计算文件的哈希并将其附加到文件名:

<link rel="stylesheet" type="text/css" href="myfile.css" asp-append-version="true" />    
<script src="myfile.js" asp-append-version="true"></script>

所以文件会变成这样:

<link rel=stylesheet href="myfile.css?v=qWYa_XOt9FCnEt2z8CjC7apiyjA5l9UA9UCqT028LI">
<script src="myfile.js?v=eN9kwxdWtX5aP8H3TFVOQrwu08Qndyktg5kvpSLa1A">

关于javascript - 部署新版本时清除浏览器缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47136468/

相关文章:

css - 为全日历中的外部事件重置(左上宽度 css 样式)

javascript - 带 Controller 的 Angular 接线 - 初学者

javascript - 客户端预测与服务器保持同步?

javascript - 无法仅在 Firefox 上摇动 <td> 元素

c# - 带外键的 Fluent nHibernate "not-null property references a null or transient value"

javascript - 通用日期时间格式

c# - 如何实现异步缓存?

css - 如何查看元素的大小?

javascript - 使用 ionicPopup.show 在弹出窗口中将按钮移动到彼此下方

javascript - Angular 样式 : add dynamically a background-image with an overlay