Jquery - 从promise / deferred Ajax响应中读取HTTP响应

时间:2013-12-05 09:23:21

标签: jquery jquery-deferred jquery-callback

我是jquery promises和deferred对象的新手。我正在尝试获取或分析POST / PUT / DELETE ajax请求的响应。我希望能够读取HTTP状态代码(200,204,...)。

以这种方式使用$ .when和延迟对象时:

$.when($.ajax(request)).then(callback_function(response))

可以分析HTTP状态代码吗?响应vble本身是空的,因为响应中没有数据。如果不可能,解决方案是使用done()还是fail()函数?如果识别HTTP状态代码对其采取行动很重要怎么办?

1 个答案:

答案 0 :(得分:1)

检查jQuery文档http://api.jquery.com/jQuery.ajax/并搜索“jqXHR对象”,你有解决方案。

  

jQuery 1.5中$ .ajax()返回的jqXHR对象实现了   Promise接口,为它们提供所有属性,方法和   Promise的行为(有关更多信息,请参阅Deferred对象)。   这些方法采用一个或多个函数参数   $ .ajax()请求终止。这允许您分配多个   单个请求上的回调,甚至在回调之后分配回调   请求可能已经完成。 (如果请求已经完成,那么   立即触发回调。)jqXHR的可用Promise方法   对象包括: