首页 > 代码库 > ajax清除缓存的问题

ajax清除缓存的问题

在使用AJAX作WEB开发时,往往会存在一些莫名其妙的问题。

如,第一次的AJAX请求是正常的,而第二次为什么就不正常了呢,而且往往会出现于第一次请求同样的结果。

其实这是因为AJAX第一次请求确实是发送到了服务器,而第二次并没有真的发到服务器,而是从IE的缓存中读取的。

那么如何解决这一问题呢?

方法很简单,就是让AJAX请求的URL每一次都不一样就好了。

解决方法如:在AJAX请求的URL后加上随机数:?ram=Math.random()

例:要请求的URL为“ajax.aspx”

那么就改为:“ajax.aspx?ram=” + Math.random();

这样就完全可以避免AJAX从缓存中读取而造成的错误。

 

 

第二种清除缓存 :

Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);

Response.Expires=0;

Response.CacheControl="no-cache";

ajax清除缓存的问题