Node.js Web应用程序浏览器兼容性

时间:2014-02-25 13:13:57

标签: javascript html5 node.js

我听说node.js是构建实时Web应用程序(聊天,直播等等)的理想框架,然后我猜它会涉及到nodejs和客户端浏览器之间的大量socket io连接。

在客户端,我必须使用websocket(html5)才能与node.js通信,如果是这种情况,那么大多数旧浏览器将不支持HTML5-Websocket。

问题: 是使用node.js构建的实时Web应用程序,仅适用于与HTML5兼容的浏览器。?

2 个答案:

答案 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

  

在客户端,我必须使用websocket(html5)才能与node.js通信,如果>就是这种情况,那么大多数旧浏览器都不支持HTML5-Websocket。

如果客户端使用支持HTML5的浏览器,Node JS的

socket.io包在内部创建WebSocket连接。在其他浏览器中,它会优雅地回退到不同的传输机制。

  

问题:使用node.js构建的实时Web应用程序仅适用于HTML5>兼容浏览器。?

以上评论必须明确,如果你使用socket.io,它将适用于所有支持的浏览器:) See Browser support for socket.io