我一直在nodejs编程,看过如何使用socket.io和ajax调用节点服务器。 socket.io是否设计用于替换ajax?我很想知道在哪些情况下使用socket.io以及哪些ajax更好。感谢您的投入。
答案 0 :(得分:24)
嗯,Web套接字(通过socket.io)提供的主要功能之一是ajax缺少的是服务器推送。因此,如果您想了解服务器上的新事件(例如,不同的用户向您发送消息),那么使用ajax,您需要进行服务器轮询,这意味着您需要在相对频繁的定期循环中发送ajax请求。大多数情况下,服务器会回复说没有什么新东西,但偶尔会有新的东西,客户端可以了解它。
Web套接字允许服务器在没有轮询的情况下主动将通知推送到客户端。因此,如果您的应用程序有任何需要在服务器上启动并且只是在浏览器中显示的信息,那么Web套接字就是更好的解决方案。