我正在开发一个ruby CGI视频处理工具,并且希望在用户点击启动ffmpeg for a-hour-long-encoding-spree按钮时将用户重定向到另一个位置。Ruby CGI重定向响应,无需等待脚本结束
下面是代码:
@cgi.out("status" => "302", "location" => @job.report_url) {''}
@cgi.out{''}
@job.start
做这样的工作正常的Safari 5.0.5。但是Firefox在重定向之前等待脚本完成他的工作。而且,如果你的脚本比Apache的超时花费更长的时间,那么它可能永远不会发生。
我希望得到一个cgi.close()方法。哪存在!但是是一个CGI :: Session方法,对我来说无关紧要。
这是另一个类似的问题......但不是重复的!因为我需要使用标准输入,输出和错误后重定向:Returning a response with Ruby CGI before script is finished?
所以,我怎么能发送一个完整CGI响应之前做一些其他的任务,并具有相同的脚本?
试着做@ cgi.send(:stdoutput).flush – Roman 2011-05-09 23:56:01