首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery $..get/$.ajax传递HTTP状态码200,而不是预期的状态码201或202

jQuery $..get/$.ajax传递HTTP状态码200,而不是预期的状态码201或202
EN

Stack Overflow用户
提问于 2011-10-29 00:00:24
回答 1查看 3.9K关注 0票数 11

我有一个服务器,它从相同的url返回HTTP状态代码200、201和202。在Chrome中,我已经与网络调试面板确认了状态码是我期望的(即200、201或202)。我依靠该状态代码来确定下一步。

我期望jQuery (version 1.5.2) AJAX的回调请求将jqxhr.status设置为服务器发送的状态代码。但是,即使服务器发送的代码是201或202,状态代码也始终是200。

换句话说,无论服务器发送什么,以下代码都会打印Code: 200

代码语言:javascript
复制
$.get(url, {}, function (data, textStatus, xhr ) {
    alert("Code: " + xhr.status);
});

为什么会发生这种情况,更重要的是,如何在$.get$.ajax的jQuery AJAX回调中获得实际状态代码

感谢您的阅读。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-01 01:30:10

根据我的经验,jQuery没有很好地设置为处理响应中的实际状态代码。您可以尝试使用一些很好的老框架JS进行手动AJAX调用,然后自己处理状态。

这里有一些关于如何做到这一点的教程。

http://www.degraeve.com/reference/simple-ajax-example.php

http://www.w3schools.com/ajax/default.asp

在request.status中,您应该能够访问请求对象中的状态代码。这是另一个页面,显示了如何访问有关请求状态的更细粒度的信息。

http://www.ibm.com/developerworks/web/library/wa-ajaxintro3/

希望这能帮你搞定它!

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7931766

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档