当前位置: 首页 > 面试题库 >

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

羊昊苍
2023-03-14
问题内容

我有一台服务器,从同一URL返回HTTP状态代码200、201和202。在Chrome浏览器中,我已经通过“网络”调试面板确认了状态代码是否符合我的预期(即200、201或202)。我依靠该状态码来确定下一步。

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

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

$.get(url, {}, function (data, textStatus, xhr ) {
    alert("Code: " + xhr.status);
});

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

感谢您的阅读。


问题答案:

根据我的经验,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/

希望对您有所帮助!



 类似资料:
  • 问题内容: 我现在将脚本更改为jquery。这是我的旧javascript: 我现在想将其更改为jquery-ajax: 像在旧脚本中一样,如何测试请求返回的状态码(和responseText)? 问题答案: 试试这个: 要么:

  • 问题内容: 我们正在使用Flask作为我们的API之一,我只是想知道是否有人知道如何返回HTTP响应201? 对于诸如404之类的错误,我们可以致电: 但是对于201我得到 LookupError:201都不例外 我是否需要创建自己的例外,像这样的文档? 问题答案: 你可以在这里阅读。

  • 问题内容: 我们正在使用Flask作为我们的API之一,我只是想知道是否有人知道如何返回HTTP响应201? 对于诸如404之类的错误,我们可以致电: 但是对于201我得到 LookupError:201也不例外 我是否需要创建自己的例外,像这样的文档? 问题答案: 您可以在这里阅读。

  • 我考虑在项目中使用fluent-http。 所以我尝试注入: 返回正确的字符串,但似乎没有使用状态代码。在这两种情况下,响应都有一个代码HTTP200。 注意:我发现一些状态代码是预先实现的: null

  • 我想知道为什么这里有200个状态码。我正在运行一个flask应用程序,当请求一个已处理的endpoint而不是一个已处理的方法时,会得到一个200状态代码作为响应。 这是最小的,可复制的代码。file: 然后我运行。我提出了以下请求:,结果如下: 但我不明白的是:我没有处理对

  • 我有一个名为Backend(端口:9090)的服务,位于Zuul(端口:8080)后面。 浏览器在Zuul上调用GET方法,执行重定向。 示例调用:http://localhost:8080/testredirect 结果: 浏览器收到Http状态=200 浏览器URL:http://localhost:8080/testredirect 浏览器显示:Hello world 预期结果: 浏览器应接