我是jquery promises和deferred对象的新手。我正在尝试获取或分析POST / PUT / DELETE ajax请求的响应。我希望能够读取HTTP状态代码(200,204,...)。
以这种方式使用$ .when和延迟对象时:
$.when($.ajax(request)).then(callback_function(response))
可以分析HTTP状态代码吗?响应vble本身是空的,因为响应中没有数据。如果不可能,解决方案是使用done()还是fail()函数?如果识别HTTP状态代码对其采取行动很重要怎么办?
答案 0 :(得分:1)
检查jQuery文档http://api.jquery.com/jQuery.ajax/并搜索“jqXHR对象”,你有解决方案。
jQuery 1.5中$ .ajax()返回的jqXHR对象实现了 Promise接口,为它们提供所有属性,方法和 Promise的行为(有关更多信息,请参阅Deferred对象)。 这些方法采用一个或多个函数参数 $ .ajax()请求终止。这允许您分配多个 单个请求上的回调,甚至在回调之后分配回调 请求可能已经完成。 (如果请求已经完成,那么 立即触发回调。)jqXHR的可用Promise方法 对象包括: