online-chatroom
Version:
要修改url路径的文件: 1.html/login.html 48行 2.js/wsServer.js 6行 3.js/ws.js 第2行 和 第11行 4.js/app.js 14行(可以不修改)
43 lines (33 loc) • 1.06 kB
JavaScript
const WebSocket = require('ws');
const validator = require('validator');//判断json
const server = new WebSocket.Server({
port: 8888,
host: '10.31.161.80'
}); // 创建ws服务
let users = {};
server.on('connection', client => {
let LTSusername = '';
let LTSpassword = '';
client.on('message', msg => {
if (validator.isJSON(msg)) {
LTSusername = JSON.parse(msg).LTSusername;
LTSpassword = JSON.parse(msg).LTSpassword;
users[LTSusername] = client;
broadcast(msg, client, LTSusername);
} else {
broadcast(msg, client, LTSusername);
}
});
});
function broadcast(msg, client, LTSusername) {
if (validator.isJSON(msg)) {
for (let key in users) {
users[key].send(`${LTSusername}已上线`);
}
} else {
for (let key in users) {
let content = msg.replace(/\n/g,"");//msg自动带了一个换行
users[key].send(`{"msg":"${content}","username":"${LTSusername}"}`);
}
}
}