html 页面 js 引用添加动态版本号

本文介绍了一种通过sessionStorage和时间戳更新JS文件版本号的方法,以减少因浏览器缓存导致的资源加载问题。该方法避免了频繁请求相同资源,减少了网络开销,提高了网站性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

因为没有使用 freeMarker 等模板,给静态文件增加动态版本号后缀无法从后端获取后渲染。

先使用了

document.write("<script src='../js/index.js?v="+Math.Random()+"'><"+'/'+"script>");

这样做虽然可以防止 js 的缓存了,但是每次刷新页面都会重新生成一个版本号,重新拉取 js 文件,导致不必要的网络开销,稍微修改了一下,使用了 sessionStorage 和时间戳,基本满足了需求了。

var timestamp = new Date().getTime();
var versionStamp = sessionStorage.version;
if (versionStamp == null || (timestamp - versionStamp) > 1800000) {
   sessionStorage.version = timestamp;
}
document.write("<script src='../js/index.js?v="+sessionStorage.version+"'><"+'/'+"script>");

 

转载于:https://my.oschina.net/u/3188258/blog/1539014

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值