我有一个PHP脚本,需要在后台运行并在
的帮助下运行ignore_user_abort(true);
即使关闭浏览器也可以运行脚本。
但我不想每次都关闭浏览器,
$.ajax({
type: 'POST',
url: 'myphp.php',
data: values,
success: function(re) {alert("somthing");}
});
浏览器总是等待AJAX响应,即使没有提到success:
有没有办法停止浏览器等待时间,这样用户可以正常浏览网站而无需等待完成php脚本。
答案 0 :(得分:0)
处理请求 jQuery XHR
var xmlHttpRequest = $.ajax( {
//....
});
xmlHttpRequest.abort();
答案 1 :(得分:0)
在PHP代码的开头尝试放置:
ob_start();
ob_end_flush();
这会将内容发送到您的ajax脚本并停止。
我没有尝试,所以这只是一个想法;)
答案 2 :(得分:0)
你可以尝试
fclose(STDIN);
fclose(STDOUT);
fclose(STDERR);
虽然apparently是否有效取决于确切的PHP版本。或者你可以在一段时间后(可能在你开始接收内容之后)从客户端终止AJAX调用。
也就是说,AJAX调用的本质是“用户可以在不等待的情况下正常浏览网站”,即使在运行时也是如此,所以我不确定你要做的是什么。