# socket.io 快速入门
# 1. 介绍
服务端和客户端 使用 socket.io 进行 websocket 通信
# 2. 服务端
安装:
npm i socket.io
# "socket.io": "^4.7.3"
示例:
const { Server } = require("socket.io");
// 允许跨域
const io = new Server({ cors: {} });
io.on("connection", (socket) => {
// 向该 socket 客户端发送消息
socket.emit('CONNECTED');
// 向所有 socket 客户端发送消息 (除了该 socket 客户端)
socket.broadcast.emit('MESSAGE', data);
// 侦听该 socket 客户端
socket.on('MEMBER_INFO', (data) => {
console.log(data.member, 'connected');
})
// 客户端 socket 断开时触发,默认事件
socket.on('disconnect', () => {
const member = getMemberBySocket(socket);
socket[member] = null;
logger.info(member, 'disconnect');
});
});
io.listen(30001, {
// This defines how many bytes a single message can be, default 1MB (1e6)
maxHttpBufferSize: 10 * 1024 * 1024, // 10MB
});
# 2.1. 客户端
安装:
npm i socket.io-client
# "socket.io-client": "^4.7.3"
示例:
import { io } from "socket.io-client";
const socket = io(`ws://localhost:30001`);
// 侦听服务端 'MESSAGE' 事件
socket.on('MESSAGE', (data) => {
console.log(data);
})
// 向服务端发送 'SEND' 事件
socket.emit('SEND', { message: 'hello, I am client' })
# 3. 参考
上一篇: 下一篇:
本章目录