我对socket.io有一定的经验,以前使用它的主要原因是要在较旧的浏览器中进行回退。目前,我必须使用websockets开发具有特定浏览器要求的应用程序。当我在浏览器矩阵中检查websocket support时,我看到我需要的所有浏览器都支持websockets。
所以现在我有一个难题。我应该坚持使用socket.io还是使用纯websockets实现它?当我检查websocket API时,我发现它非常简单。我对此问题和this question sounds similar进行了小型研究,它的主要组成部分是与旧浏览器兼容(我不在乎)。
那么如果兼容性不成问题,socket.io有什么优势吗?
最佳答案
是的,有。即使在为新的浏览器进行开发时,我也可以看到使用Socket.IO的3个优点:
首先,有阻止WebSocket的防火墙(请参阅下面的注释),防病毒和代理。在这种情况下,XHR后备对于确保所有用户都可以使用您的服务非常有用。
其次,Socket.IO支持自动重新连接,因此您不必担心暂时的网络故障。
第三,提供了rooms and namespaces支持,这使编写实时应用程序变得更加轻松和愉快。
关于sockets - 如果不需要回退,使用WebSocket API代替Socket.io有任何优势吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24473369/