取消XHR请求
问题描述:
我:取消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
谢谢,请给我简单的例子:) –