用uniapp 及socket.io做一个简单聊天app 2
创始人
2024-11-17 18:04:57
0

在这里只有群聊,二个好友聊天,可以认为是建了一个二人的群聊。

const express = require('express'); const http = require('http'); const socketIo = require('socket.io'); const cors = require('cors'); // 引入 cors 中间件  const app = express(); const server = http.createServer(app); const io = socketIo(server, {   cors: {     origin: "*", // 允许所有来源     methods: ["GET", "POST"]   } });  // 使用 cors 中间件 app.use(cors());  const port = 3000; const groups = {};  io.on('connection', (socket) => {   console.log('New user connected');    // 用户加入群组   socket.on('joinGroup', ({ groupName, userName }) => {     socket.join(groupName);     groups[socket.id] = { groupName, userName };     socket.to(groupName).emit('message', `${userName} has joined the group`);     console.log(`${userName} joined group ${groupName}`);   });    // 发送消息   socket.on('sendMessage', ({ groupName, message, userName }) => {     io.to(groupName).emit('message', `${userName}: ${message}`);     console.log(`Message sent to ${groupName}: ${userName}: ${message}`);   });    // 踢人   socket.on('kickUser', ({ groupName, userName }) => {     for (let id in groups) {       if (groups[id].userName === userName && groups[id].groupName === groupName) {         io.sockets.sockets.get(id).leave(groupName);         io.to(groupName).emit('message', `${userName} has been kicked from the group`);         console.log(`${userName} was kicked from group ${groupName}`);         break;       }     }   });    // 用户断开连接   socket.on('disconnect', () => {     if (groups[socket.id]) {       const { groupName, userName } = groups[socket.id];       socket.to(groupName).emit('message', `${userName} has left the group`);       delete groups[socket.id];       console.log(`${userName} left group ${groupName}`);     }   }); });  server.listen(port, () => {   console.log(`Server running on port ${port}`); });   

uniapp的界面

       

运行效果:在这里插入图片描述

相关内容

热门资讯

步骤辅助!wepoker有没有... 步骤辅助!wepoker有没有透视方法,wepoker私人局辅助,分享教程(有挂工具)1、游戏颠覆性...
手段辅助!poker红龙辅助,... 手段辅助!poker红龙辅助,德扑之心免费透视,有挂教程(有挂辅助)1、玩家可以在德扑之心免费透视透...
机巧辅助!wepoker透视最... 机巧辅助!wepoker透视最简单三个步骤,wepoker代打辅助,教你教程(有挂攻略)1、下载好w...
模板辅助!WePOker有没有... 模板辅助!WePOker有没有透视方法,菠萝德普辅助器免费版在哪里,了解教程(有挂实锤)1、首先打开...
技法辅助!wepoker透视脚... 技法辅助!wepoker透视脚本苹果版,wepoker私人局有透视吗,必备教程(新版有挂)1、金币登...
妙计辅助!哈糖大菠萝可以开挂吗... 妙计辅助!哈糖大菠萝可以开挂吗,hhpoker德州挂真的有吗,详细教程(果真有挂)1、哈糖大菠萝可以...
秘籍辅助!wepoker免费辅... 秘籍辅助!wepoker免费辅助器,德普之星透视辅助软件是真的吗,总结教程(有挂技巧)1、许多玩家不...
教材辅助!wepoker透视辅... 教材辅助!wepoker透视辅助下载,we poker游戏下,有挂教程(有挂细节)1、教材辅助!we...
绝活辅助!拱趴大菠萝十三水作弊... 绝活辅助!拱趴大菠萝十三水作弊,wepoker有没有机器人,专业教程(有挂讲解)1、任何拱趴大菠萝十...
讲义辅助!aapoker能控制... 讲义辅助!aapoker能控制牌吗,约局吧能不能开挂,必备教程(存在有挂)1、实时约局吧能不能开挂透...