禁用浏览器缓存
2009-09-25 09:40 Aggron 阅读(663) 评论(0) 编辑 收藏 举报在AJAX访问中,有些时候数据不需要被浏览器缓存,通常想到的方法就是在HTTP响应头中设置Cache-control信息,如:
Response.Expires=0;
Response.CacheControl="no-cache";
其实有更方便的方法,在URL中加入随机参数,比如:
防止对 userDetail.aspx?uid=10210981请求结果被浏览器缓存,可以将请求URL改成 "userDetail.aspx?uid=10210981&time=” + new Date()
这样下一秒再次发送请求时, time参数变了, 请求结果自然是重新从服务器获取的
在jQuery中, $.ajax{cache:false}也采用了类似的方法来禁止浏览器缓存
当cache:false时jQuery自动在请求地址后面添加了_=xxxxxxx 的参数。