如何在socket.io中使用fallback来在websocket服务器上提供长轮询?

我有一个现有的websocket服务器,它通过一些非http端口上的websockets为IM提供json服务。

这适用于支持websocket协议的浏览器,但是使用该function的浏览器很多。

我正在阅读socket.io和nodejs,并想在websocket服务器前添加一个使用socket.io和nodejs的代理来处理所有的websocket请求。 由于socket.io支持使用flash websockets或长轮询回退,我希望在客户端使用socket.io将允许支持所有旧的浏览器。

所以,我的问题是,

  1. 上述方法是否可行?
  2. 如何在nodejs中处理长时间投票回退? 是自动处理还是需要执行?
  3. 任何现有的资源可能会帮助我。

谢谢

  1. 这是可行的。 不过,我build议使用NodeJS和Socket.IO为您的非HTTP请求和浏览器的http请求。 NodeJS可以很容易地处理它们。
  2. Socket.IO自动处理回退。
  3. 这里是一个简单的聊天系统的例子。