errorThrown jquery错误回调函数

时间:2013-12-31 15:52:20

标签: javascript jquery ajax error-handling

参数errorThrown是什么数据(jQuerys错误回调函数的第三个参数) 是什么,服务器(后端编写,在我的情况下,它是一些用Java编写的基于REST的服务)必须返回,或者是更通用的东西,“自动”返回,而不必添加一些一个代码中的错误处理?

3 个答案:

答案 0 :(得分:2)

好吧,来自jQuery.ajax()s documentation

  

类型:函数(jqXHR jqXHR,String textStatus,String errorThrown)   ...当发生HTTP错误时,errorThrown会收到HTTP状态的文本部分,例如“Not Found”或“Internal Server Error”。...

因此errorThrown字符串对于任何失败响应的HTTP状态响应都是相同的(> 399)对于400,它将是Bad Request,500:Internal Server Error等。

答案 1 :(得分:0)

来自documentation

的引用
  

错误

     

类型:函数(jqXHR jqXHR,String textStatus,String   errorThrown)请求失败时要调用的函数。该   函数接收三个参数:jqXHR(在jQuery 1.4.x中,   XMLHttpRequest)对象,一个描述错误类型的字符串   发生了,并且发生了一个可选的异常对象。可能   第二个参数的值(除了null)是“超时”,“错误”,   “abort”和“parsererror”。发生HTTP错误时,errorThrown   接收HTTP状态的文本部分,例如“未找到”   或“内部服务器错误”。从jQuery 1.5开始,错误设置可以   接受一系列功能。

所以基本上errorThrown参数与从服务器发送的响应无关。这只是与状态代码相关的错误原因。如果您的服务器除了设置状态代码之外还使用自定义错误原因,则此参数可能对检索它很有用。

答案 2 :(得分:0)

需要注意的一点(我刚刚遇到了这个问题)是errorThrown将是用HTTP / 2发出的请求的空字符串。

这是因为该属性来自基础XHR的statustext属性,并且该属性不会为HTTP / 2请求填充。

更多信息在这里: Why is the statusText of my XHR empty?