以下是一个使用 Node.js 和 WebSocket 实现消息收发的示例:

中英文对照

1. 安装 WebSocket 模块
使用 ws 模块,执行以下命令安装:

npm install ws

2. 创建 WebSocket 服务器
以下是一个简单的 WebSocket 服务器代码:

// 引入 WebSocket 模块
const WebSocket = require('ws');

// 创建 WebSocket 服务器
const wss = new WebSocket.Server({ port: 8080 });

// 监听客户端连接 
wss.on('connection', (ws) => {
  console.log('客户端已连接 / Client connected');

  // 监听消息事件 
  ws.on('message', (message) => {
    console.log('收到消息: ', message); // 打印收到的消息

    // 发送回执消息 
    ws.send(`服务器收到: ${message}`);
  });

  // 监听关闭事件 
  ws.on('close', () => {
    console.log('客户端已断开连接 ');
  });

  // 监听错误事件
  ws.on('error', (error) => {
    console.error('发生错误: ', error); // Log errors
  });
});

console.log('WebSocket 服务器运行在 ws://localhost:8080 ');

3. 创建 WebSocket 客户端
以下是一个简单的 WebSocket 客户端代码:

// 引入 WebSocket 模块 
const WebSocket = require('ws');

// 创建客户端实例 
const ws = new WebSocket('ws://localhost:8080');

// 监听连接事件 
ws.on('open', () => {
  console.log('已连接到服务器');

  // 向服务器发送消息 
  ws.send('你好,服务器!');
});

// 监听消息事件 
ws.on('message', (message) => {
  console.log('收到来自服务器的消息: ', message); // Log messages from the server
});

// 监听关闭事件 
ws.on('close', () => {
  console.log('连接已关闭 ');
});

// 监听错误事件 
ws.on('error', (error) => {
  console.error('发生错误: ', error); // Log errors
});

4. 运行代码
在终端中分别运行服务器和客户端代码:

# 启动服务器 
node server.js

# 启动客户端 
node client.js

效果

  • 服务端会打印接收的消息,并回复客户端。
  • 客户端会显示接收自服务器的消息。