我正在请求$ .ajax的东西,我在通话后获得302或200状态。 我希望在状态为200时向DOM中插入一些内容,并在返回状态为302时进行实际重定向。
为此我正在使用:(在这里从不同的线程中获取该片段)
complete: function (XMLHttpRequest, textStatus) {
alert(XMLHttpRequest.status);
if(XMLHttpRequest.status === 302) {
//if it wants to redirect
window.location = XMLHttpRequest.getResponseHeader("Location");
}
}
当POST状态返回200时,一切都很完美。
问题是,当我获得302状态(我可以看到我得到firebug)时,firebug告诉我,在第一个帖子之后有一个名为immedidiately的GET请求,我收到警告“200”即使初始POST有302状态。是否正常,在返回staus 302的POST后有一个GET短路,如果是,为什么我明显得到那个GET的状态而不是POST?
答案 0 :(得分:2)
这很正常。没有办法检测302状态。浏览器首先重定向,然后您获得一些状态,但它不是您请求的页面状态。