koa2使用socket.io

之前在koa2中一直使用websocket.。后面看到很多 express使用socket.io。遂在网上找了一堆资料,搞懂了怎么在koa中使用socket.io。且socket与主服务端 app在同一端口。

socket.io是对websocket的封装,用于客户端与服务端的相互通讯。官网:https://socket.io/。

不废话,上代码:

Server端:

const Koa = require('koa');
const app = new Koa();
const server = require('http').Server(app.callback());
const io = require('socket.io')(server);
const port = 8081;

server.listen(process.env.PORT || port, () => {
     console.log(`app run at : http://127.0.0.1:${port}`);
})

io.on('connection', socket => {
     console.log('初始化成功!下面可以用socket绑定事件和触发事件了');
     socket.on('send', data => {
          console.log('客户端发送的内容:', data);
          socket.emit('getMsg', '我是返回的消息... ...');
     })

     setTimeout( () => {
         socket.emit('getMsg', '我是初始化3s后的返回消息... ...') 
     }, 3000)
})

客户端:注1



     
     socket.io客户端
     


     
     

服务器响应的消息:

你可能感兴趣的:(koa2使用socket.io)