我在可能不存在的URL(不同域)上使用 jQuery.getJSON()
。有没有办法让我捕获错误“无法加载资源”?由于此调用的异步特性,try/catch似乎不起作用。
我也不能使用 jQuery.ajax()
的“error:
”。从文件:
最佳答案
如果您想知道从远程服务返回成功结果的最坏情况下的延迟,则可以使用超时机制来确定是否存在错误。
var cbSuccess = false;
$.ajax({
url: 'http://example.com/.../service.php?callback=?',
type: 'get',
dataType: 'json',
success: function(data) {
cbSuccess = true;
}
});
setTimeout(function(){
if(!cbSuccess) { alert("failed"); }
}, 2000); // assuming 2sec is the max wait time for results