使用socket.io

使用socket.io

使用express+socket.io完成聊天室项目

socket.io 服务,是一种即时通讯服务

//如何实现通讯
A <=> 服务端 <=> B
/*
	1. 客户端发送信息给服务端
	2. 服务端接收客户端的信息
	3. 服务端发送信息给客户端
	4. 客户端接收服务端的信息
*/

socket的使用

//1. 安装socket.io服务
	npm i socket.io

//2. 引入socket.io服务 (依赖http服务)
	
	//先搭建一个http服务(与express框架),将其关联与socket.io关联

	//1) 引入express框架
	let express=require('express');
	//2) 创建应用
	let app=express();
	//3) 搭建http服务
	let server=require('http').Server(app);
	//4) 创建socket.io服务
	let io=require('socket.io')(server);

	app.use(express.static('ndoe_modules'));
	app.set('view engine','ejs');
	app.set('views','./views');
	app.get('/app',(req,res)=>{
        res.render('index');
        res.end();
    })
	//设置端口
	server.listen(端口号);

连接socket.io

1. 服务端连接
io.on('connection',function(socket){
	/*
		socket形参(是客户端传来的)是一个对象: 对象中有两个函数
			1) emit(), 服务端向客户端发送信息
				socket.emit('频道号','发送的信息')
				socket.broadcast.emit('频道号','发送的信息');
				//broadcast是广播的意思,使用它其他客户端才能接收到信息
			2) on(), 服务端接收客户端信息
				socket.on('频道号',function(res){
					//此时的res是对象格式信息
					console.log('res: 接收的信息')
				})
	*/
    
    //通常情况: 发送的信息都是对象格式
})
2. 客户端连接
let socket=io.connect('/');
//其中socket变量中也有两个函数,emit和on,使用方式与服务端一致

克隆节点

let 变量=要复制的节点.clone()
posted @   又又儿  阅读(307)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示