使用Server发送Event和node.js构建聊天应用程序

时间:2013-01-28 05:15:20

标签: html5 node.js websocket server-sent-events

我是node.js和SSE的新手。 我想使用SSE和node.js创建一个聊天应用程序。 任何一个更好的SSE或websocket指南? 是否有任何使用js而不是php for IE7 +的IE的polyfill

请建议。

提前致谢。

3 个答案:

答案 0 :(得分:1)

如果客户端永远不会向服务器发出请求,并且服务器将进行所有推送,那么您应该使用服务器发送的事件。

但是,对于聊天应用程序,由于客户端需要不断向服务器发送请求,因此WebSocket API是最自然的选择。

" polyfills"对于WebSocket API,其他技术可以以更低效的方式模仿套接字连接,例如,Ajax长轮询。

像Socket.IO这样的WebSocket库设计为在可用时使用WebSocket API,并在WebSocket API不可用时回退到其他技术,如Ajax长轮询。

您使用的服务器端语言几乎无关紧要。

答案 1 :(得分:1)

首先考虑兼容性。

SSE: http://caniuse.com/#feat=eventsource

IE:没有支持

Firefox:版本6 +

Opera:版本11 +

Chrome:未知版本+

Safari:版本5.1 +

WebSocket :(协议13) http://caniuse.com/#feat=websockets

IE:版本10 +

Firefox:版本11 +

Opera:版本12.1 +

Chrome:版本16 +

Safari:版本6 +

我知道很多适用于WebSockets的模块(包括我自己编写的模块simpleS,我做了一个简单的演示聊天,以显示如何在频道中组织连接,试一试),以及与SSE一起运行的那些比较少,我想最后的那些测试较少,与使用WebSockets的模块相比,你不能依赖它们。

您可以在此处找到有关WebSockets和SSE的模式信息:WebSockets vs. Server-Sent events/EventSource

答案 2 :(得分:1)