我想这么用:
post '/upload' do 10.times do |i| yield i sleep 1000 end end
就是处理一段时间返回一个结果,不知道怎么写。
TCP 是长连接 你这样的话一来有可能前端页面一直是 load 状态 导致人为关闭页面了 还有一个是如果用 nginx 反向代理的话 有可能设置了超时时间(比方说你只开发 不负责维护服务器)会抛掉你的 request 返回超时的 你的需求能不能用 socket 实现呢
呵呵,让我想起了牟教授
#1 楼 @zj0713001 也就是说我只能在浏览器设置个 timer 来不停从服务器获取最新状态喽?
#2 楼 @badboy 牟教授是谁呀?
#3 楼 @phaibin 是啊 你在主楼里的实现方式 按照你的需求来讲是没法实现的 目前能实现你的需求的只有 3 种方式 ajax 轮询 长轮询 websocket
后台 batch 之类的用定时器的来处理日报什么的数据?
理论上也可以用 http 协议的 chunked 特性
http://zh.wikipedia.org/wiki/%E5%88%86%E5%9D%97%E4%BC%A0%E8%BE%93%E7%BC%96%E7%A0%81 http://stackoverflow.com/questions/6789703/how-to-write-javascript-in-client-side-to-receive-and-parse-chunked-response-i
用 rails 的 stream 似乎能搞