我一直在nodejs中编程,研究了如何同时使用socket.io和对节点服务器的ajax调用。socket.io是否设计为替代ajax?我很好奇,在哪种情况下使用socket.io更好,而哪种ajax更好。感谢您的输入。
好吧,Web套接字(通过socket.io)提供的主要内容之一就是ajax缺乏的是服务器推送。因此,对于ajax,如果您想了解服务器上的新事件(例如,另一个用户向您发送了一条消息),则需要进行服务器轮询,这意味着您以相对频繁的周期性循环发送ajax请求。在大多数情况下,服务器会响应没有新内容,但是有时候,当有新内容时,客户端可以了解它。
Web套接字允许服务器在不进行轮询的情况下主动将通知推送到客户端。因此,如果您的应用程序具有任何需要在服务器上启动并且仅在浏览器中显示的信息,则Web套接字是一种更好的解决方案。