用户点击页面链接发起一个请求,如果后台处理的时间太久,用户直接关闭浏览器后,服务器端的程序还会继续执行吗?如果执行,怎么让它随着用户关闭浏览器后自动终止?用户发起一个ajax请求,服务器端执行时间较久,用户abortion这个ajax请求,后端怎么终止这个请求?鉴于http的无状态协议,是不是用户关闭浏览器或者取消ajax请求时,服务器端并不知道,而继续执行?是否需要后台写程序来处理这样的事情?
2 回答
LEATH
TA贡献1936条经验 获得超6个赞
浏览器发起请求,然后服务器开始执行,一直执行到服务器脚步运行完毕或者出现异常或者TIMEOUT。浏览器没法关闭服务器的运行。但是……技术总是不挺发展,RFCHTTP1.1定义了Connection响应头,具体的可以参考PHP的连接处理。http的无状态协议这个是历史遗留问题,现在的HTTP版本也正在解决这个问题,比如上面提到的长链接。定义在RFC2616(HTTP1.1)的Connection。进一步阅读:http协议学习系列
添加回答
举报
0/150
提交
取消