在socket.io中表达的目的是什么

What is the purpose of express in socket.io?

本文关键字:是什么 socket io      更新时间:2023-09-26

我为这个新手问题道歉,在socket.io中express的目的是什么,为什么我们在创建聊天应用程序时需要express?。我们可以使用socket.io API创建聊天应用程序吗?

提前谢谢。

Express是一个使用Node.js创建Web应用程序的微框架。您可以将其视为"RubyonRails"极其轻量级的替代方案。

您将它与Socket.io一起使用,因为您通常需要一个基础来开始创建web应用程序。Express通常是常见的选择,但也有类似Sails.js的其他选择。您也可以使用普通Node.js API来创建带有Socket.io的应用程序。

webSocket连接是通过http连接启动的,该连接包含特殊的webSocket标头,当双方同意迁移到webSocket时,该标头将从http"升级"到webSockets协议。因此,您需要在nodejs中有一个侦听http服务器,以便字段webSocket连接。

您的web服务器不必使用Express来处理传入的webSocket连接(如果需要,您可以只使用nodejs中的纯http模块,或者其他任何侦听传入http连接的模块),但是socket.io与Express直接集成,因此socket.io只需要一行代码就可以挂接到Express,然后监听传入的webSocket连接。

而且,正如其他人所说,每当你有webServer时,你通常也会为网页提供服务,而Express是一种通过nodejs为网页提供服务器的简单而流行的方式,所以很多使用socket.io的人也已经在使用Express了。