直接上代码:
public class weixinfilter implements filter{ private static logger logger = loggerfactory.getlogger(weixinfilter.class); public void init(filterconfig fconfig) throws servletexception {} public void destroy() {} public void dofilter(servletrequest request, servletresponse response, filterchain chain) throws ioexception, servletexception { httpservletrequest req = (httpservletrequest)request; httpservletresponse resp = (httpservletresponse)response; string requesturl = req.getrequesturl().tostring(); string querystr = req.getquerystring(); // add timestamp to static resource, to avoid cache if(requesturl != null && (requesturl.endswith(".js") || requesturl.endswith(".css"))){ // static resource string newurl = null; if(stringutils.isnotblank(querystr) && querystr.trim().indexof(parameterconfig.static_tail) == -1){ newurl = requesturl + "?" + querystr + "&" + parameterconfig.static_tail + new date().gettime(); resp.sendredirect(newurl); // req.getrequestdispatcher(newurl).forward(request, response); return; } if(stringutils.isblank(querystr)){ newurl = requesturl + "?" + parameterconfig.static_tail + new date().gettime(); resp.sendredirect(newurl); // req.getrequestdispatcher(newurl).forward(request, response); return; } try{ chain.dofilter(request, response); }catch(exception e){ logger.error(e.tostring()); } return; } public class parameterconfig { /** 静态资源 为防止缓存,加上时间戳标志 */ public static final string static_tail = "__oawx_t=";
配置下过滤器就行了,效果如下:
在开发阶段还是比较有用的。
以上所述是小编给大家介绍的利用 filter 机制给静态资源 url 加上时间戳,来防止js和css文件的缓存问题的相关内容,希望能够帮助到大家。
如对本文有疑问, 点击进行留言回复!!
ScrollView和RecyclerView的滑动事件处理
配置JAVA环境+安装Android Studio全过程+踩坑记录
Android P Camera2当SD卡被拔出来自动切换到内部存储
android 多个edittext 判空监听 让Button动态是否可点击
Android开源项目滚轮选择器WheelPicker的基本用法总结
网友评论