1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > ajax返回304 jquery $ajax GET请求在IE浏览器兼容中遇到的304 cache请求的经验分享

ajax返回304 jquery $ajax GET请求在IE浏览器兼容中遇到的304 cache请求的经验分享

时间:2022-07-16 22:41:50

相关推荐

ajax返回304 jquery $ajax GET请求在IE浏览器兼容中遇到的304 cache请求的经验分享

在最代码上线后,印象最深的2个bug:

1.用户提醒数字明明已经查看了但是一直还在提示。

2.用户下载代码已经登录了但是一直提示尚未登录。

经过和牛牛们远程协助发现是因为在IE内核的浏览器下,http协议中浏览器端中对相同请求有cache的机制,会返回304Not Modified提示浏览器可以继续用本地cache而忽略服务端返回的数据。

在jquery的$ajax请求中增加:cache:false参数即可:

例如下载代码时ajax调用是否下载代码的逻辑如下:$(".download").click(function() {

var id=$(this).attr("content_id");

var niubi=$(this).attr("niubi");

$.ajax({

url : "/code/"+id+"/is_downloaded.htm",

type : 'GET',

dataType : 'json',

cache:false,

success : function(json) {

if(json.error==""){

if(json.is_downloaded=="0"){

if (!confirm("确认下载代码么?下载将扣除你"+niubi+"个牛币")) {

return;

}

}

window.location = "/code/" + id + "/download.htm";

}else{

alert(json.error);

}

}

});

});

相信好多牛牛都会遇到诸如此类的诡异问题,本地环境调试都正常,但线上却出现问题了,最重要的还是得多提高这种问题排查能力。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。