用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的界面

       

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

相关内容

热门资讯

透视智能ai!wepoker私... 透视智能ai!wepoker私人局有透视吗(透视)其实是真的挂,微扑克教程(有挂黑科技)-哔哩哔哩透...
透视线上!wpk可以辅助吗,约... 透视线上!wpk可以辅助吗,约局吧app有挂吗,模板教程(真是有挂)-哔哩哔哩1、任何约局吧app有...
五分钟详情!wepoker透视... 五分钟详情!wepoker透视是真的吗(透视)都是是真的挂,详细教程(有挂教程)-哔哩哔哩1.wep...
透视脚本!德州机器人代打脚本(... 透视脚本!德州机器人代打脚本(透视)确实真的是有挂,技巧教程(有挂私人房)-哔哩哔哩1、这是跨平台的...
透视真的!大菠萝789辅助器下... 透视真的!大菠萝789辅助器下载,wepoker破解器激活码,步骤教程(今日头条)-哔哩哔哩大菠萝7...
2分钟透视!哈糖大菠萝助手(透... 2分钟透视!哈糖大菠萝助手(透视)一贯真的是有挂,规律教程(详细教程)-哔哩哔哩1、不需要AI权限,...
透视ai代打!wepoker线... 透视ai代打!wepoker线上大神(透视)好像存在有挂,安装教程(有挂开挂)-哔哩哔哩所有人都在同...
透视计算!wepoker辅助器... 您好,aapoker破解侠是真的吗这款游戏可以开挂的,确实是有挂的,需要了解加去威信【4852750...
第2分钟普及!德州私人局怎么透... 第2分钟普及!德州私人局怎么透视(透视)其实真的是有挂,存在挂教程(有挂方法)-哔哩哔哩1.德州私人...
透视真的!aapoker透视方... 透视真的!aapoker透视方法(透视)原来存在有挂,介绍教程(有挂计算器)-哔哩哔哩1、完成aap...