使用jQuery 1或2的最新版本,我有这个简单的代码发出请求并显示结果:
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响应,数据未定义。
如何显示浏览器缓存中的数据?
答案 0 :(得分:1)
ifModified
ifModified (默认值:false)
类型:布尔
仅在自上次请求后响应发生更改时才允许请求成功。
一切都说,我猜。不要使用它,它不符合你的想法。
$(function() {
$("#query1").on("click", function(){
$.get("cache/1").done(function (data, statusText, response) {
$("#result1")
.html("status :"+response.status);
.append("<p>"+JSON.stringify(data)+"</p>");
});
});
});
不要试图引导客户端的缓存。这是服务器的任务。设置适当的缓存标头,客户端将自行运行。