【发布时间】:2011-03-19 09:26:48
【问题描述】:
我开发了一个简单的叠加层来以全尺寸预览图像。
我使用“cache: false”来防止缓存。
代码很简单:
$.ajax({
url: urlFull,
cache: false,
success: function(html){
// display image
},
error: function(XMLHttpRequest, textStatus, errorThrown ) {
// display error
}
});
问题是 - 当图像文件将被另一个替换时,浏览器将始终显示旧文件,无论是否设置了“缓存:false”选项。
此问题出现在 Safari 5.0 (6533.16) 和 Chrome 5.0.375.99 下。
在 Firefox 3.6.3 中,它按预期工作(无缓存)
我无法控制服务器端逻辑,因为我预加载了一个常规文件,而没有在 rails 中调用控制器操作。
这个问题有什么解决方法吗?也许,我可以用 Rails 服务器拦截响应并调整一些标题? ...我在 localhost 下开发。
谢谢。
【问题讨论】:
标签: ruby-on-rails caching jquery cross-browser