没有轮询且没有插件的持久连接示例

时间:2011-12-29 14:38:07

标签: javascript streaming comet

我找到了an interesting library that allows DOM manipulation from the server,这允许从浏览器中隐藏大部分逻辑,因此所有浏览器都会看到当您选中此框时会发生什么,它实际上并不知道当您执行时该怎么做选中复选框。

看到it responds so quickly,我看了一下网络活动,发现了一个带有HTTP 101(切换协议)的项目,它说连接仍然是打开的。

似乎JavaScript中有一种方法可以接收流媒体数据

这怎么可能?代码有点大,我用谷歌搜索表明它会被称为Comet,但有更多关于高度跨浏览器“长轮询”的信息,但这似乎不是正在发生的事情。

如何实现这样的快速结果的(简单)示例是什么?

2 个答案:

答案 0 :(得分:1)

HTTP / 1.1 101响应头是Websocket协议握手。

我发现socket.io是最好的就绪滚动库(客户端和服务器),尤其是在使用JavaScript时。如果可能的话,Socket.io将放入闪存套接字,然后在不支持Websockets的旧浏览器中进行长轮询。

答案 1 :(得分:0)

Long Polling是一种推动技术。在Web套接字(HTML 5)之前,Web遇到了类客户端服务器问题。在客户端请求之前,服务器无法推送。因此无法将数据推送到客户端。长轮询是其中一种方法。

它以简单的方式工作。客户端会向服务器发出请求,服务器是否有任何新的服务器会立即服务,或者等到新内容到来。当有新内容出现时,服务器会发送响应。收到响应后,客户端将再次向服务器重新发出请求。还有其他实现推送技术的方法。阅读:wiki