利用SSE打造极简web聊天室
创始人
2024-11-15 17:12:18
0

在B/S场景中,通常我们前端主动访问后端可以使用axios,效果很理想,而后端要访问前端则不能这样操作了,可以考虑SSE、websocket和gRPC等方式,实时和性能均有保障。
下面给出一个简单的例子,后端是node+express,前端是html+javascript(jquery+axios) 实现一个简单的web聊天室。
不说废话,直接上代码:

const stringRandom = require("string-random");  const express = require('express'); const app = express();  var msgs=[]; var clients=[];  app.use('/', express.static('./'));  app.get('/events', (req,res)=>{ 	res.writeHead(200,  { 'Content-Type': 'text/event-stream', 'Connection': 'keep-alive', 'Cache-Control': 'no-cache' }); 	res.write(`data: ${JSON.stringify(msgs)}\n\n`); 	let clientid=stringRandom(32, { letters: 'ABCDEF' }) 	clients.push({ "clientid":clientid, "res":res }); 	req.on('close', () => { clients = clients.filter(item => (item.clientid != clientid)); }); });  app.post('/sendmsg',express.json(), (req,res)=>{ 	msgs.push(req.body); 	res.json({"code":200}); 	clients.forEach(client=>{ client.res.write(`data: ${JSON.stringify(req.body)}\n\n`)  }); });  app.listen(3000, () => { console.log(`极简聊天室服务启动`); }) 
   极简聊天室       

浏览器访问效果如下:
在这里插入图片描述
在这里插入图片描述

相关内容

热门资讯

辅助透视!德普之星透视辅助软件... 辅助透视!德普之星透视辅助软件,同城游破解版下载(果然有挂)1、很好的工具软件,可以解锁游戏的同城游...
透视代打“德普之星app安卓版... 透视代打“德普之星app安卓版破解版”好像存在有挂(辅助挂)详细辅助新2025教程1、打开软件启动之...
透视辅助!wpk透视脚本下载,... 1、透视辅助!wpk透视脚本下载,wepoker黑侠辅助器正版下载(详细辅助攻略教程)。2、wepo...
红龙poker透视工具!wep... 红龙poker透视工具!wepoker祈福有用吗,aapoker透视怎么用(详细辅助靠谱教程)1)红...
透视挂!wpk辅助购买,wep... 透视挂!wpk辅助购买,wepoker手机助手(详细辅助2025版教程),支持语音通讯、好友开房及战...
透视科技!约局吧透视挂下载,闲... 透视科技!约局吧透视挂下载,闲娱江西辅助器(果然真的有挂);1、完成闲娱江西辅助器透视辅助安装,帮助...
透视黑科技“aapoker透视... 透视黑科技“aapoker透视软件”确实是真的有挂(辅助挂)详细辅助AI教程;1、系统规律教程、辅助...
aapoker辅助是真的吗!w... aapoker辅助是真的吗!wejoker辅助脚本,aapoker俱乐部靠谱吗(详细辅助攻略教程)1...
透视了解!wpk辅助插件叫什么... 透视了解!wpk辅助插件叫什么,aapoker插件(详细辅助AI教程);最新版2024是一款经典耐玩...
透视透视!竞技联盟透视插件,微... 透视透视!竞技联盟透视插件,微乐广西麻辣辅助器(一直是真的有挂)进入游戏-大厅左侧-新手福利-激活码...