6

我在这里做了一些聊天示例:http: //psitsmike.com/2011/09/node-js-and-socket-io-chat-tutorial/

当我使用 Chrome 和 Firefox 时,一切都像魅力一样。对于 IE9 或 Opera,一些 socket.io 事件不会触发(例如断开连接)或触发太晚,并且数据接收太慢。

我使用 npm 方法安装了 node.js 和 socket.io 模块。

请帮忙。

4

1 回答 1

9

Socket.IO 最适合 websockets。在 2012 年之前,大多数浏览器不支持 websockets(来源)。

使用此类浏览器,socket.io 会回退到各种轮询方法,但这些方法可能会导致您遇到问题,例如低数据速率和延迟事件(延迟 1-2 分钟触发)。要解决这个问题,您应该尝试启用闪存套接字。

 io.set('transports', [
     'websocket'
   , 'flashsocket'
   , 'htmlfile'
   , 'xhr-polling'
   , 'jsonp-polling'
 ]);

此外,请确保可以从客户端访问闪存策略端口(默认 10843)。

于 2012-10-21T13:42:43.133 回答