小编典典

ajax请求后浏览器将等待多长时间?

ajax

在服务器回答请求之前,浏览器需要等待多长时间才能显示错误?这次可以无限吗?


阅读 323

收藏
2020-07-26

共1个答案

小编典典

如果使用的是jQuery $
.ajax调用,则可以设置timeout属性以控制请求以超时状态返回之前的时间。超时设置为毫秒,因此只需将其设置为很高的值即可。您也可以将其设置为0(表示“无限”),但我认为您应该设置一个较高的值。

注意:“无限制” 实际上是默认设置,但大多数浏览器都有默认超时值。

当由于超时而返回ajax调用时,它将返回错误状态“超时”,您可以根据需要使用单独的情况进行处理。

因此,如果您想将超时设置为3秒,并处理超时,请参考以下示例:

$.ajax({
    url: "/your_ajax_method/",
    type: "GET",
    dataType: "json",
    timeout: 3000, //Set your timeout value in milliseconds or 0 for unlimited
    success: function(response) { alert(response); },
    error: function(jqXHR, textStatus, errorThrown) {
        if(textStatus==="timeout") {  
            alert("Call has timed out"); //Handle the timeout
        } else {
            alert("Another error was returned"); //Handle other error type
        }
    }
});​
2020-07-26