在做登陆注销功能的时候,使用ajax方式请求,点击登陆成功,点击注销成功,再次点击登陆后台就获取不到任何的请求,基本上等同于无效。
通过JavaScript调试发现ajax代码执行了,回调函数中的数据(data)有值,可是后台就是没有接收到任何请求,如果使用不一样的数据请求,这个时候后台controller方法调用。
总结发现,猜想会不会是浏览器缓存,执行同样的ajax调用同样的数据,直接从缓存中取得,每次关闭浏览器后才能正常执行ajax调用后台。
查阅资料发现jQuery中ajax有cache:false,这个属性,不知道什么原因默认打开,将cache:false,加入到ajax请求中就完美解决这个问题。
万万万万想不到ajax请求ie还有缓存这个东西(以前使用ajax根本没出现过这样情况)。
还有一种解决办法是加入一个随机数参数, number=Math.random();