expression式和节点之间的区别

我是nodejs编程的新手,经历了为节点开发的各种js。 我的问题是一个基本的问题。 有人可以向我解释明确和socketio之间的区别。

据我所知,express是一个中间件,我们可以使用像玉这样的模板引擎将数据推送到浏览器。 那么socketio做什么呢? 这是一个传输层吗? 我很难理解差异,为什么我们需要在nodejs应用程序中使用express和socket。

Express是一个应用程序服务器。 您可以定义路由并编写代码来生成应用程序的页面或API响应。 它基本上是一个叫做Sinatra的ruby项目的一个端口。 它适用于传统的请求/响应HTTP模型。

Socket.io可以帮助你实现一个实时types的function,如警报/通知,聊天,或任何你想要做的更新,如果你希望他们只是在浏览器中显示而不等待用户点击“刷新”button或类似的东西。

快速http服务器提供从客户端到服务器的请求响应模型。

Socket.io启用客户端和服务器之间的双向通信通道。