glo*_*mad 5 javascript ajax comet responsetext long-polling
有没有办法在不破坏XHR对象的情况下清除XHR对象的responseText?
我需要保持对Web服务器的持久连接,以将实时数据提供给浏览器.问题是,有相对大量的数据通过(每秒几百K),因此内存使用是一个大问题,因为此连接必须保持打开至少几分钟.responseText变得非常快,即使我发回的JSON已经被碾压得尽可能小.
由于服务器端应用程序的工作方式,如果我使用AJAX样式的短轮询并且在完成它时只破坏XHR对象,我会错过大量的重要数据,即使在解析它的几毫秒内也是如此.响应,创建一个新的XHR并将其发送出去.我没有选择使用重叠请求,因为Web服务器一次只接受一个连接.(不要问.)所以Comet正是我需要的模型.
我想要做的是解析从服务器返回的每个JSON块,然后清除responseText以便我可以继续使用相同的连接.但是,responseText是只读的.它不能通过我找到的任何方法直接清空.
我在这里缺少一部分照片吗?当我读完它时,有没有人知道我可以用来释放responseText的任何技巧?或者服务器响应可以到达另一个地方吗?
我不包括代码,因为这几乎是一个与代码无关的问题.生成XHR并处理返回数据的Javascript例程非常非常简单.
这就是长轮询的工作原理。您可以在最后读取的行号中保留一个索引,并从该点开始读取间隔的每个刻度。这是一个长连接,因此也是一个长响应。
新鲜responseText就意味着新鲜的联系。但那样它就不再是彗星了;)
| 归档时间: |
|
| 查看次数: |
1376 次 |
| 最近记录: |