页面中发起ajax request后,关闭了网页窗口,ajax 会正常run到结束吗?
在一个Web页面中发起ajax request后,在response返回前关闭了网页窗口,ajax request在后台会正常run到结束吗?回调函数会被执行吗?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
在一个Web页面中发起ajax request后,在response返回前关闭了网页窗口,ajax request在后台会正常run到结束吗?回调函数会被执行吗?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(7)
这个问题好理解
你对着一个地方开了一枪后走开了,子弹还会过去吗?
子弹打到对方后,往你刚刚开枪的地方回击,会打中你吗?
页面被关闭,页面对应的AJAX请求应该也被浏览器中断了.
http://php.net/manual/zh/function.ignore-user-abort.php
php.ini中ignore_user_abort默认是Off,不忽略用户的中断,也就是客户端断开连接后,脚本将被中止.不过在PHP尝试发送信息到客户端之前,不会检测到用户是否已中断连接.仅使用echo语句不能确保信息已发送,参见flush()函数.如果想要确保在用户中断后继续执行PHP代码,需要设置:
ignore_user_abort(true);
如果是php的,那是会run的
总的来说http是一个无状态协议,所以web页面发起了ajax request后,后台是不会知道你前端网页是否关闭了的,后台都是会run到结束的。
如果后端接到了请求,后台便会执行。
都跑到后台了,服务器可不会管你浏览器关没关。
后台会执行完操作,但是前台页面关了,应该没有后续操作。