getJSON 调用中的错误处理

如何处理 getJSON 调用中的错误?我正在尝试使用jsonp引用跨域脚本服务,如何注册错误方法?


答案 1

$.getJSON()是一种常规 AJAX 调用的抽象,您必须告诉该调用需要 JSON 编码的响应。

$.ajax({
  url: url,
  dataType: 'json',
  data: data,
  success: callback
});

您可以通过两种方式处理错误:一般(通过在实际调用之前配置 AJAX 调用)或具体(使用方法链)。

“通用”将如下所示:

$.ajaxSetup({
      "error":function() { alert("error");  }
});

以及“特定”方式:

$.getJSON("example.json", function() {
  alert("success");
})
.done(function() { alert("second success"); })
.fail(function() { alert("error"); })
.always(function() { alert("complete"); });

答案 2

有人给卢西亚诺这些点:)我刚刚测试了他的答案 - 有一个类似的问题 - 并且完美地工作......

我甚至加上我的50美分:

.error(function(jqXHR, textStatus, errorThrown) {
        console.log("error " + textStatus);
        console.log("incoming Text " + jqXHR.responseText);
    })