关于IE浏览器缓存的处理

最近公司的项目开始从ExtJs改版到JQuery。顺便说一句,从这个项目中我个人最大的触动就是,项目开发所选用的技术真的很重要,如果采用项目团队所有人都不熟悉的技术,代价将是巨大的,风险也是巨大的。虽说这些看起来很容易懂,但是我作为一个初入行业的菜鸟,真的是首次真正的体会到。如果有一天,我成为项目经理,一定注意这个问题。下面说正题,JQuery我也不会用,这个项目是第一次。在我一次登录之后,重启了我本地的Tomcat,导致了Session失效,返回登录页面时登录,竟然发现无法登录,而登录页面刷新了一下。使用IE9(我本地的版本)的开发人员工具进行跟踪,发现网络请求中根本没有登录请求。

后来怀疑是从本地读取了IE缓存的数据,而没有向后台发送请求。百度之后得到了解决的办法:添加时间戳,在登录的URL后面加上参数"t="+new Date().getTime();问题得到解决,原因是当GET请求资源时,IE会根据自己的设置(临时文件和历史记录设置),决定是否从缓存中得到该请求的返回结果,加上时间戳以后,由于发送的参数t每次都改变,IE在本地不可能找到与之相对应的缓存,就会向后台发送该请求。问题也随之解决。

总结,这个问题虽然很简单,但是希望成为我技术积累的开始。因为每一小步都是伟大的,而第一步则是开天辟地。

posted on 2012-07-04 16:08  Seving  阅读(157)  评论(0编辑  收藏  举报

导航