ajax 与 err_connection_refused,如何在jquery ajax中处理net :: ERR_CONNECTION_REFUSED

4 个答案:

答案 0 :(得分:6)

您可以使用timeout $.ajax属性触发error回调。

如果服务器在特定时间限制内没有响应,这将确保触发error回调。

$.ajax({

url: "//myapi.com/json",

dataType: "jsonp",

timeout: 15000 // adjust the limit. currently its 15 seconds

}).done(function (data) {

selectText('Id', data.country);

}).fail(function (jqXHR, textStatus, errorThrown) {

var defaultOption = 'US'

selectDropdownByText('Id', defaultOption);

console.log(errorThrown);

});

如果没有互联网,这将触发fail回调。

答案 1 :(得分:1)

当jqXHR.readyState(即$ .ajax(...)。fail()方法的第一个参数的readyState字段)为0时,似乎发生了网络错误。但是,我无法通过JavaScript确定确切的网络错误。

我查看了jQuery Ajax代码,而xhr.send()(即XMLHttpRequest.send())方法(生成网络错误)不会捕获也不会抛出错误。因此,不可能抓住它。

浏览器似乎检测到并显示正确的错误消息,但jQuery无视发生的特定网

你可能感兴趣的:(ajax,与)