我听说node.js是构建实时Web应用程序(聊天,直播等等)的理想框架,然后我猜它会涉及到nodejs和客户端浏览器之间的大量socket io连接。
在客户端,我必须使用websocket(html5)才能与node.js通信,如果是这种情况,那么大多数旧浏览器将不支持HTML5-Websocket。
问题: 是使用node.js构建的实时Web应用程序,仅适用于与HTML5兼容的浏览器。?
答案 0 :(得分:10)
许多nodejs聊天应用程序使用socket.io。
对于没有websockets的浏览器,socket.io有一个回退(包括pull或Flash):
Socket.IO旨在让每个浏览器都可以使用实时应用程序 移动设备,模糊了不同之间的差异 运输机制。它在JavaScript中实现100%的免费实时。
使用socket.io的关键在于你并不在乎,你只是使用它,大多数浏览器都会使用websockets,而有些则不会(但它们仍然可以正常工作)。
答案 1 :(得分:1)
我听说node.js是构建实时Web应用程序(聊天,直播> feed等)的理想框架,然后我猜它涉及nodejs和客户端>浏览器之间的大量socket io连接。 / p>
是的,你听到的是正确的。它确实涉及客户端浏览器和服务器之间的socket.io连接
Read more about socket.io here
如果客户端使用支持HTML5的浏览器,Node JS的在客户端,我必须使用websocket(html5)才能与node.js通信,如果>就是这种情况,那么大多数旧浏览器都不支持HTML5-Websocket。
socket.io包在内部创建WebSocket连接。在其他浏览器中,它会优雅地回退到不同的传输机制。
问题:使用node.js构建的实时Web应用程序仅适用于HTML5>兼容浏览器。?
以上评论必须明确,如果你使用socket.io,它将适用于所有支持的浏览器:) See Browser support for socket.io