众所周知,在我们pc端的浏览器上,当后台改动css,或者js等代码的时候,需要浏览器清除缓存,页面才能重新加载,显示最新的样式或内容;
但是,如果我们的在手机端呢?比如说,我们开发一个微信服务号来实现一个微商场。突然有一天,客户要求升级或者改动一部分样式,这时我们在后台很rasy的搞定了,
但是会发现,微信页面根本样式就没变,搞了一下午原来是缓存的问题!但是发现怎么清理缓存啊!而且大部分用户根本就不知道“缓存”这回事:经过测试和努力找到了一下解决方案:
1、取消关注该微信公众号,重新关注即可(这很影响用户体验)
2、清理微信内存,关闭微信,再重新登录(太折腾)
3、给引入网页的css文件,或超链接 加参数时间戳:time=${time} (终极解决方案)
例如:
<link rel="stylesheet" href="<%=basePath %>css/public.css?time=${time}">
当后台修改public.css文件内容时,微信服务号会重新加载最新的时间戳内容。这里的${time} 是从后台传过来的System.currentTimeMillis()值
同理,超链接也是如此!
这样做会使每次都重新加载内容会使反映时间加长,不过那也是在用户量访问大的时候!毕竟功能的展现啊!!!