在部署代码之后,我们遇到了客户端服务陈旧的js、css文件的问题。我们使用IIS作为我们的We服务器,我们的代码在ASP.Net 4.5中。我做了一些研究,并指出ETag与缓存控制一起工作.据我所知,ETag是由web服务器根据文件的日期时间戳自动生成的,因此我运行了以下步骤,以了解为什么系统不发送最新版本的js和css文件。
当我访问我的.js页面时,我不知道为什么不请求demo.aspx文件。
此外,在每次部署代码时,是否有一种简单的方法强迫客户端浏览器下载最新版本的.js和.css文件。根据我的研究,我发现一种方法是重命名.js和.css文件。请注意,这个想法对我们是行不通的。
我们确实在我们的项目中使用更新面板。不确定这是否与浏览器没有第二次请求js文件有关?
发布于 2017-03-28 20:41:13
一个广泛使用的技巧是添加一个查询字符串参数,该参数随css或js文件的每个新版本而递增。
就像myScript.js?version=12。当数字发生变化时,浏览器将其视为一个新文件,并将其下载而不是从缓存中检索。
仅仅通过编辑文件来更改时间戳是行不通的,浏览器不会从服务器获得时间戳。您可以尝试从网站中保存图片或文件,它们都具有下载时间的时间戳。
https://stackoverflow.com/questions/43079171
复制相似问题