ie浏览器对相同url的的ajax请求具有缓存的机制,这样在ajax请求的数据,在数据库发生变化的时候,页面将会不发生更新,不知道这个机制是bug,还是属于ie的优化,但有时确实会带来麻烦,并且其他浏览器似乎都没有这个机制。
不过可以解决,
1.在请求url后面加上时间戳
eg:localhost:8080/myajax/data/list?time=new Date().getTime()
这样可以有效解决,并且也是一个良好的习惯。
2.设置ajax请求的缓存属性
如果是jquery
$.ajaxSetup({ cache: false });可以通过这个设置,设置当前页面的所有ajax请求的cache的属性为false,这时就不会缓存了,
当前也可以单独设置某个ajax不缓存
普通的xhr也可以通过相应属性设置,同理其他框架的都可以。