利用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、乐玩游戏辅助工具辅助软件下载...
一直以来"wpk透视... 一直以来"wpk透视辅助"wpk辅助器是真的吗(本来有辅助软件)-哔哩哔哩;一、wpk辅助器是真的吗...
今日!嘟咪互动,wepoker... 今日!嘟咪互动,wepoker透视脚本是什么(透视)总是真的有辅助工具(哔哩哔哩)1、用户打开应用后...
记者获悉!嘟咪互动修改器,威信... 记者获悉!嘟咪互动修改器,威信茶馆有挂的吗(原来是真的插件)-哔哩哔哩1、打开软件启动之后找到中间准...
今日"wepoker... 今日"wepoker挂"wepoker透视最简单三个步骤(真是真的有辅助安装)-哔哩哔哩1、wepo...
反观!全来潜山跑风辅助器,we... 反观!全来潜山跑风辅助器,wepoker透视辅助下载(透视)确实是有辅助插件(哔哩哔哩)反观!全来潜...
一直以来!心悦提坑辅助器,亲友... 一直以来!心悦提坑辅助器,亲友联盟能开挂不(本来真的是有插件)-哔哩哔哩;1、这是跨平台的亲友联盟能...
透视脚本"德州透视脚... 透视脚本"德州透视脚本"wepoker插件下载(确实真的是有辅助软件)-哔哩哔哩1、进入到wepok...
此事迅速冲上热搜!小程序牵手跑... 此事迅速冲上热搜!小程序牵手跑得快有外g挂吗,德普软件(透视)竟然有辅助脚本(哔哩哔哩)1、完成小程...
现有说明如下!财神十三章辅助软... 现有说明如下!财神十三章辅助软件,奇迹手游辅助(一贯是有器)-哔哩哔哩1、现有说明如下!财神十三章辅...