php能否主动断开HTTP连接
使用ajaxFileUpload异步上传一个excel,需要分析后将文本入库
excel可能较大所以想先给前端一个返回值后再执行后续的长耗时方法
因此在想能不能echo之后主动断开http连接
因为ajaxFileUpload的原理是构造一个form然后post数据
后端echo数据之后http连接依然存在,不能立即执行ajaxFileUpload的回调函数
网上搜了一下如下方法
$size=ob_get_length();
header("Content-Length: $size"); //告诉浏览器数据长度,浏览器接收到此长度数据后就不再接收数据
header("Connection: Close"); //告诉浏览器关闭当前连接,即为短连接
ob_flush();
flush();
我的理解是这段代码是立刻向前端输出缓存区的内容
但是经测试后端依然是等整个http连接结束后,即后续长耗时方法执行完毕后才输出
header("Connection: Close")为何没起作用?
如果用PHP另起一个进程来做长耗时的操作应该可以解决问题,那如果不用异步进程的方法,有没有其他解决方案?PHP能不能主动断开HTTP连接?求高手指点
SY到出血
10 years, 2 months ago