Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ajax轮询:发送请求的频率高于setTimeout_Javascript_Jquery_Ajax_Polling - Fatal编程技术网

Javascript ajax轮询:发送请求的频率高于setTimeout

Javascript ajax轮询:发送请求的频率高于setTimeout,javascript,jquery,ajax,polling,Javascript,Jquery,Ajax,Polling,我有以下ajax轮询代码: function pollStatus(url){ $.get(url, function(response){ if (response.uploaded === null){ setTimeout(pollStatus(url), 5000); } }; } 当我查看network选项卡时,我看到请求几乎每秒发送一次,而不是settimeout中指定的5秒。我在这里做错了什么?您的函数将立即

我有以下ajax轮询代码:

function pollStatus(url){
    $.get(url, function(response){
        if (response.uploaded === null){
            setTimeout(pollStatus(url), 5000);
        }
    };
}

当我查看network选项卡时,我看到请求几乎每秒发送一次,而不是settimeout中指定的5秒。我在这里做错了什么?

您的函数将立即被调用,因为您必须在
超时中传递参数,请使用匿名函数:

 setTimeout(function() {
     pollStatus(url)
 }, 5000);