一般动作
供稿人:刁隆
使用 AJAX 时,常常碰到缓存的问题:
比如有缓存的话,总是看到老数据(而且各个浏览器对缓存的支持方式或者程度还不一样,尤其是IE浏览器);没有缓存的话,对系统又产生不必要的压力。
通常情况下,可以通过后台或前台两种方式来进行缓存控制,后台的无非是在 response 中设置一些缓存头(比如在控制器中调用 BroToolkit 提供的 nocache() 方法),前台可以通过使用 POST 方式避免缓存,或者在 GET 方式中设置一个随机数(或者时间戳)来避免缓存。
下面就一些常见的前台处理缓存的方式进行简介与示例,示例中均使用 jquery:
1、使用 post 方式代替 get 方式,以避免缓存
2、禁用 ajax 缓存(仅限 jqeury 的各种ajax方法)
3、手动在url或者请求参数中添加一个时间戳来避免get缓存(效果和2完全一样)
4、借用方法3的方式,实现允许某个时间段内使用缓存