旧版浏览器的Node.js/Socket.io中的Web Socket支持

Chr*_*_vr 6 javascript websocket node.js socket.io

我使用c ++创建了一个Web Socket服务器.我们知道HTML 5支持Web Socket,我们有标准的Web Socket Java Script Api与Web套接字服务器通信.我可以使用Web Socket Api连接到Web Socket服务器.由于仅在新浏览器中支持Web Socket Api.

 IE          version 10    
 Chrome      version 16   
 Firefox     version 6   
 Safari      version 6.0   
 Opera       version 12.10
Run Code Online (Sandbox Code Playgroud)

我还需要为以下浏览器版本提供支持.
Web Socket Api支持的浏览器

 IE          version 7
 Chrome      version 14
 Firefox     version 4   
 Safari      version 5.1 
Run Code Online (Sandbox Code Playgroud)

我听说过node.js和socket.io.两者都受到支持

Web Socket Api不支持浏览器
Internet Explorer 5.5+ Safari 3+ Google Chrome 4+ Firefox 3+ Opera 10.61+

我想编写java脚本客户端以使用Node.js/Socket.io连接到Web Sokcet服务器

Node.js/Socket.io允许我在旧浏览器中连接吗?

T.J*_*der 14

您可以使用Socket.io支持这些浏览器,是的,但不是专门用于Web套接字(因为许多浏览器版本没有Web套接字).

截至2013年11月,Socket.io支持的浏览器列表如下:

桌面:

  • Internet Explorer 5.5+
  • Safari 3+
  • 谷歌Chrome 4+
  • Firefox 3+
  • Opera 10.61+

移动:

  • iPhone Safari
  • iPad Safari
  • Android WebKit
  • WebOs WebKit

他们通过使用各种传输来实现这种级别的支持,具体取决于浏览器的功能(同样,从2013年11月开始):

  • 的WebSocket
  • Adobe®Flash®插槽
  • AJAX长轮询
  • AJAX多部分流媒体
  • 永远的iframe
  • JSONP轮询

从那以后,Socket.io 被分成(至少)Socket.io和Engine.io,后者提供传输.似乎Engine.io的传输列表已大大减少:

  • polling:XHR/JSONP轮询传输
  • websocket:WebSocket传输

它似乎表明还有一种方法可以使用Flash套接字.

据推测,这反映了现代浏览器几乎普遍支持websockets的事实.

  • @DavidChase:根据他们网站的头版:*"它适用于所有平台,浏览器或设备,同样关注可靠性和速度."*大声称! (3认同)