什么是 WebSocket?
WebSocket 是一种网络协议,它可在客户端和服务器之间建立双向持久连接,实现了客户端和服务器之间的实时通信。它与 HTTP 协议一样都是基于 TCP 协议实现的。
相比之下,HTTP 协议是一种请求-响应模式的协议,客户端需要发送请求后,服务器才会响应数据。而 WebSocket 则可以在客户端和服务器建立连接后,实现双方随时互发数据,不需要像 HTTP 协议那样每次都需要发送请求。
在 Node.js 中,我们可以通过 ws
模块来实现 WebSocket 通信。请先确保已经安装了该模块:
npm install ws
接下来,我们来看一下如何实现 WebSocket 通信。
-- -------------------- ---- ------- -- ----- ----- --------- - -------------- ----- --- - --- ------------------ ----- ---- --- -------------------- -------- ---- - ---------------------- ------------ -- ------- ---------------- -------- ------ - ------------------ -- -------- --------------- --------- - - ------ --- ---
-- -------------------- ---- ------- -- ----- ----- --------- - -------------- ----- -- - --- --------------------------------- ------------- -------- -- - ---------------------- ------------ -- -------- -------------- --------- --- ---------------- -------- ------ - ------------------ ---
以上是一个简单的示例代码,服务端通过 WebSocket.Server
创建了一个 WebSocket 服务器,监听在 8080 端口上。当有客户端连接到服务器时,服务器会输出一条日志,并且可以接收客户端发送过来的数据。客户端通过 WebSocket
创建一个连接,连接到服务端并发送消息,同时也可以接收服务端发送过来的消息。
总结
WebSocket 是一种可实现双向持久连接的网络协议,在实现实时通信的场景下十分优秀。Node.js 中提供了 ws
模块可以方便地实现 WebSocket 通信,我们只需要简单几行代码就可以搭建起一个 WebSocket 服务器。它对于实时通信的需求非常适用,如果你需要实现即时聊天、在线游戏等功能,可以考虑使用 WebSocket 协议。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/651c92bc95b1f8cacd4131cf