WebSocket 的产生源于 Web 开发中日益增长的实时通信需求,对比基于 http 的轮询方式,它大大节省了网络带宽,同时也降低了服务器的性能消耗; socket.io 支持 websocket、polling 两种数据传输方式以兼容浏览器不支持 WebSocket 场景下的通信需求。 框架提供了 egg-socket.io 插件,增加了以下开发规约: namespace: 通过配置的方式定义 namespace(命名空间) middleware: 对每一次 socket 连接的建立/断开、每一次消息/数据传递进行预处理 controller: 响应 socket.io 的 event 事件 router: 统一了 socket.io 的 event 与 框架路由的处理配置方式 安装 $ npm i egg-socket.io --save 开启插件:config/plugin.js exports.io = { enable: true , package: ' egg-socket.io ' , }; 配置插件config/config.default.js / 和 new2 属于不同的命名空间 即如果你有两个业务用到了socket,可以分别用不同的命名空间去管理,如果只用到一个写一个及可 exports.io = { init: { }, // passed to