使用jQuery 1或2的最后一个版本,我有这个简单的代码,使一个请求,并显示结果:如何使用jQuery读取缓存的json数据?
var url1 = "cache/1";
var callback1 = function(data, statusText, response){
$("#result1").html("status :"+response.status);
$("#result1").append("<p>"+JSON.stringify(data)+"</p>");
};
$(function() {
$("#query1").on ("click", function(){
$.ajax({
url: url1,
cache: true,
dataType: 'json',
ifModified: true,
success:callback1
});
});
});
第一个请求,我看我的JSON数据。在第二个请求中,我有一个304响应,如预期,数据未定义。
如何显示浏览器缓存中的数据?
您应该在'data'中获得与第一次相同的值。检查开发人员工具的“网络”选项卡,以确保您所做的请求实际上是一个if-modified以来的请求。 – Quentin 2015-04-06 08:48:16
其实这是一个If-None-Match,它在我直接使用url获取URL时可以工作 – 2015-04-06 08:55:16
这应该是完全透明的。在304之后运行的成功回调中获得完全相同的数据对象。 – Tomalak 2015-04-06 11:05:41