10

我正在学习 Node.js,目前正在学习 WebSockets。据我了解,Socket.io 旨在解决各种浏览器对 WebSockets 的不一致支持...如果您查看caniuse WebSockets,看来 WebSockets 目前实际上已完全支持。谁能解释为什么在这种情况下我应该使用 Socket.io 和 WebSockets?

4

1 回答 1

12
  1. 它为您处理许多技术替代方案的优雅降级,以实现双向近时通信(网络套接字、ajax 长轮询、flash 等)
  2. 截至 2013 年 3 月,该站点列出了 61% 支持的 Web 套接字。这不是“几乎完全”。
  3. 截至 2021 年 9 月,该网站列出了 98% 支持的 Web 套接字。所有现代浏览器都支持 Websocket。
  4. 它为您处理浏览器不一致和不同的支持级别
  5. (这前两件事基本上与 jQuery 创建的值相同,从透视角度来看)
  6. 它包括基本 Web 套接字之外的其他功能,例如对基本发布/订阅基础设施的房间支持以及自动重新连接等功能
  7. AFAIK 至少在目前,它比普通 Web 套接字更受欢迎且更容易获得帮助。

然而,就像那些讨厌 jQuery 的VanillaJS一样,如果你更喜欢直接使用官方标准的 Web 套接字 API,那么一定要把自己淘汰掉。

于 2013-03-03T03:01:12.873 回答