【问题标题】:Avoid caching JS, CSS files page after each deployment避免每次部署后缓存 JS、CSS 文件页面
【发布时间】:2017-01-05 04:11:02
【问题描述】:
我们正在使用 ASP.Net。但是在前端,我们使用的是 HTML 页面。所以服务器端代码不能在那里使用。
通过像这样实现“login.js?s09809808098”我们可以解决这个问题。但是我们不能在每次部署之前在每个页面上手动编辑它。请求页面时,是否有任何方法可以在服务器端编辑 html 页面。或者有什么其他方法可以解决这个问题?
【问题讨论】:
标签:
javascript
html
css
asp.net
caching
【解决方案1】:
您可以尝试添加过期标头而不缓存标头来解决此问题。
您还可以为静态 URL 资产创建一个中心存储库,当您的存储库返回 URL 时,附加一个软件版本,如 login.js?v1,这样您将在每个版本中获得新版本。还将版本号定义为 repo 类中的属性。
public static class URLRepo {
public string AppVersion = "1";
public string GetURL (enumURLName urls)
{
switch(enumURLName)
{
case enumURLName.LoginJS
return "Login.JS?v" + AppVersion;
break;
}
}
}
public enum enumURLName
{
LoginJS,
LoginCSS
}