我:取消XHR請求
function send(){
$.get("/site/send.php", function(data){
alert(data);
}
}
在網站/ send.php我:
sleep(1000)
echo "OK";
接下來,我在我的js文件:
send();
$("#click").click(function(){
$.get("/site/reset.php", function(data){
alert(data);
}
})
和復位.php:
echo "RESET";
在這個例子中,我有XHR直到睡眠< 1000.在Firebug中我看到了這個。我沒有響應和成功的函數send(),直到睡眠爲< 1000.這是好的,但我想取消這個請求,如果我使用.click()。
現在我有所有的時間函數send(),直到她不停止(> 1000),然後我沒有用.click()函數開始。爲什麼這不是異步?
這可能嗎?也許有可能取消網站上的所有請求?
你可以有一箇中間PHP腳本來管理任務。所以,你調用AJAX函數,然後調用Manager.php腳本。然後,Manager.php腳本運行更多的Worker1.php,Worker2.php,.. WorkerX.php腳本(並且不會等待它們完成,只需使用CLI啓動它們),它們將執行工作並更新工作狀態數據庫表。在此之後,您可以使用AJAX輪詢來檢查狀態一次和一段時間,並且您可以將工作人員標記爲在狀態表中執行(然後您檢查工作人員)。這是一個工作,但希望它有助於:) – Catalin
謝謝,請給我簡單的例子:) –