Node.js 使用的主要 WebSocket 库是 `ws`。它是一个简单且高性能的库,允许在 Node.js 中创建 WebSocket 服务器和客户端。WebSocket 是一种实时通信协议,可以在客户端和服务器之间建立持久连接,实现双向通信。
使用 ws 库创建 WebSocket 服务器要创建一个 WebSocket 服务器,我们需要安装并导入 `ws` 模块。下面的示例演示了如何使用 `ws` 创建一个简单的 WebSocket 服务器:javascriptconst WebSocket = require('ws');const wss = new WebSocket.Server({ port: 8080 });wss.on('connection', (ws) => { ws.on('message', (message) => { console.log(`Received message: ${message}`); ws.send(`Server received: ${message}`); }); ws.on('close', () => { console.log('Client disconnected'); });});在上面的代码中,我们创建了一个 WebSocket 服务器并监听在端口 8080 上。当有客户端连接到服务器时,`connection` 事件将被触发。在 `connection` 事件处理程序中,我们可以监听客户端发送的消息,并通过 `ws.send()` 方法将响应发送回客户端。当客户端断开连接时,`close` 事件将被触发。使用 ws 库创建 WebSocket 客户端除了创建服务器,`ws` 还可以用来创建 WebSocket 客户端。下面的示例演示了如何使用 `ws` 创建一个简单的 WebSocket 客户端,并与服务器进行通信:javascriptconst WebSocket = require('ws');const ws = new WebSocket('ws://localhost:8080');ws.on('open', () => { console.log('Connected to server'); ws.send('Hello server!');});ws.on('message', (message) => { console.log(`Received message from server: ${message}`);});ws.on('close', () => { console.log('Disconnected from server');});在上面的代码中,我们创建了一个 WebSocket 客户端,并连接到服务器。当客户端与服务器成功建立连接后,`open` 事件将被触发,我们可以在该事件处理程序中发送消息给服务器。当客户端接收到服务器发送的消息时,`message` 事件将被触发,我们可以在该事件处理程序中处理接收到的消息。当客户端与服务器断开连接时,`close` 事件将被触发。通过使用 `ws` 库,我们可以方便地在 Node.js 中创建 WebSocket 服务器和客户端。WebSocket 提供了一种实时通信的方式,使得客户端和服务器之间可以进行双向通信。使用 `ws` 库,我们可以轻松地实现实时应用程序,如聊天应用、实时数据更新等。