以下是一个使用Node.js和WebSocket实现的简单聊天室案例:
安装依赖包
npm install ws express
创建一个服务器
const express = require('express');
const http = require('http');
const WebSocket = require('ws');
const app = express();
const server = http.createServer(app);
const wss = new WebSocket.Server({ server });
wss.on('connection', (ws) => {
// 处理消息
ws.on('message', (message) => {
// 广播消息
wss.clients.forEach((client) => {
if (client.readyState === WebSocket.OPEN) {
client.send(message);
}
});
});
});
server.listen(8080, () => {
console.log('Server started on port 8080');
});
创建一个前端页面
const socket = new WebSocket('ws://localhost:8080');
// 处理消息
socket.onmessage = (event) => {
const messages = document.getElementById('messages');
const message = document.createElement('div');
message.innerText = event.data;
messages.appendChild(message);
};
// 发送消息
function send() {
const messageInput = document.getElementById('message');
const message = messageInput.value;
messageInput.value = '';
socket.send(message);
}
运行服务器
node server.js
在浏览器中打开前端页面
http://localhost:8080
现在你可以在聊天室中发送消息,并且所有连接到该服务器的客户端都将收到这些消息。
精彩链接
发表评论