jquery $ .ajax()request.fail()不在401上工作

时间:2014-07-30 17:56:35

标签: jquery ajax json

我试图使用$ .getJSON(),但无法处理401错误。所以我理解我需要使用$ .ajax()?

我正在使用:

var request = $.ajax({
    type: "get",
    url: myVideoURL,
    dataType: "json"
});

request.done(function(msg) {
    console.log(msg);
});

request.fail(function(jqXHR,textStatus) {
    alert( "Request failed: " + textStatus );
});

(用于测试," app.vzaar.com/api/videos/1152805.json?callback =?"将有效。" app.vzaar.com/api/videos/1715426 .json?callback =?"将失败401)

问题是控制台显示" 401(未授权)"在GET上,但request.fail()永远不会发生。

1 个答案:

答案 0 :(得分:1)

您可以尝试捕获所需的实际事件,因为401不是ajax请求的失败。

var request = $.ajax({
  type: "get",
  url: myVideoURL,
  dataType: "json",
  statusCode: {
     401: function() {
       alert( "Auth required" );
   }
 }
});