$(document).ready(function() {
(function poll() {
setTimeout(function() {
$.ajax({
url: "/project1/api/getAllUsers",
type: "GET",
success: function(data) {
console.log("polling");
},
dataType: "json",
complete: poll,
timeout: 5000
}), 5000
});
})();
});
這只是執行儘可能快的服務器可以響應,但我希望它只會每5秒輪詢一次。有什麼建議麼?jQuery遞歸Ajax輪詢使用setTimeout來控制輪詢間隔
編輯:我應該補充,5秒後,請求已經完成將是更可取的。
它似乎在前一個完成後5秒執行下一個AJAX輪詢。那你想改變什麼?最好的我可以理解你的問題,那就是你想要的。 –
@Richard Neil Ilagan:我希望它大概每5秒執行一次(在完成ajax請求後5秒內也沒問題,我被告知,更好的練習),但我觀察到請求執行得更快,如果它忽略了5秒的延遲。 – chrisjleu
對不起,剛出去吃晚飯。再看一下,發現你看起來錯了。在下面彈出一個答案。 –