koa2 socket.io

安装

npm i socket.io

socket连接可以跟http同端口。

单独一个文件夹socket下文件index.js,作为socket任务处理

const IO = require('socket.io')

let hashName = new Array()

function creatSocket(app) {
 const io = IO(app);
 // socket连接
 io.on('connection', (socket) => {
 console.log(socket.id)
 socket.on('setRoom', function (data) {
 console.log(data);
 var name = data.roomId;
 // // 储存上线的用户
 hashName[name] = socket.id;
 });

 socket.on('chat message', (msg) => {
 console.log('服务器收到了消息:')
 console.log('message: ' + msg);
 io.emit('chat message', { hello: '你是谁' });
 });

 socket.on('disconnect', () => {
 console.log('user disconnected');
 });
 });
}

module.exports = creatSocket

在项目的主文件index.js中

const server=require('http').createServer(app.callback())
const createServer=require('./socket')

const static = require('koa-static')
const path = require('path')
//————————————————————
app.use(static(path.join(__dirname, './static')))
//————————————————————
createServer(server)
server.listen(3000)

 

发布了66 篇原创文章 · 获赞 30 · 访问量 26万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章