调用每个$ .ajax.statusCode的所有函数

时间:2013-09-14 08:39:33

标签: jquery ajax

我正在尝试使用Twitter RESTful API以及$ .ajax.statusCode,但似乎所有状态代码函数都被调用,这让我很困惑。将此蒙皮示例与无效网址一起使用:

$.ajax
(
    {
        url: "https://api.twitter.com/foobar",
        statusCode: {
            404: console.error("404"),
            410: console.error("410")
        },
        done: function(){console.info("done");},
        fail: function(){console.error("fail");}
    }
);

在控制台中写入404和410的输出。我正在使用JQuery 1.10.2,但这也发生在1.9.1中。我检查了Firefox中的请求历史记录,我只能看到一个返回http 404响应的请求。这里有什么东西我不见了吗?

1 个答案:

答案 0 :(得分:4)

statusCode是功能状态代码的映射:

statusCode : {
  404 : function() { console.log("404"); },
  410 : function() { console.log("410"); }
}

来自jQuery.ajax

  

数字HTTP代码的对象和函数在被调用时被调用   响应有相应的代码。

JSFiddle