http请求部分响应

时间:2012-05-30 14:03:28

标签: php html xmlhttprequest

我不是http请求的专家,所以这个问题对某些人来说可能是微不足道的。我正在向php脚本发送请求,该脚本需要花费大量时间来处理文件并返回响应。有没有办法在此脚本完成任务之前发送响应,让用户知道进程状态?由于此任务可能需要几分钟,因此我希望在完成流程的关键部分时通知用户。

注意:我无法将此请求分解为其他几个

我可能没有正确的方法,如果你有其他想法如何处理这个?

3 个答案:

答案 0 :(得分:1)

技术上是的,但它需要你对http-stack进行精细控制,你可能会或可能没有在典型的PHP设置中。我建议你研究其他解决方案(例如,请求启动任务 - 然后轮询以获得进度的更新)

答案 1 :(得分:0)

http://www.redips.net/javascript/ajax-progress-bar/

这是一篇很棒的文章,它将创建ajax与php一起使用的进度条。

让我知道它是否有意义!

答案 2 :(得分:0)

我认为长期处理请求的最佳方式是cron作业。您可以发送将创建“任务”并通过cron作业捕获任务的请求。 Cron作业可以在工作时更改任务状态,您可以通过间隔请求检查任务状态。我无法想象另一种通知用户请求处理的方法。一旦您回复,您的标题就会被发送,PHP就会停止。

编辑:应该注意的是,Cron作业仅适用于Linux服务器。 Windows服务器需要访问大多数Web主机不允许的任务调度程序。