以下是一个使用 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
效果
- 服务端会打印接收的消息,并回复客户端。
- 客户端会显示接收自服务器的消息。