我是 jquery 新手。 我有一个脚本可以向 API 发送请求。基本上一切都工作正常。现在我尝试模拟网络连接错误,并使用警报向用户显示适当的错误消息。
request.fail()
仅给出 error
。 request.done()
然而显示:
发帖
网络::ERR_CONNECTION_TIMED_OUT
我现在已经搜索了很多,但奇怪的是没有找到任何简单的实现来捕获
done()
方法内的错误。也许我正在寻找错误的方式。我希望我不必为此使用正则表达式...您能给我指出正确的方向吗?
听起来您正在尝试处理 jQuery AJAX 请求中的网络错误并在出现故障时显示警报,但您只在 .done() 中看到错误。通常,错误处理应该在 .fail() 方法中处理,该方法专门用于处理请求失败,包括网络错误。
$.ajax({
url: "http://apiaddress",
type: "POST",
data: { /* your data here */ }
})
.done(function(data) {
console.log("Request successful");
})
.fail(function(jqXHR, textStatus, errorThrown) {
alert("An error occurred: " + textStatus + " - " + errorThrown);
});