WebSocket node.js服务器

痴心易碎 提交于 2020-10-05 09:13:03

const Koa = require('koa')
// 路由
const route = require('koa-route')
const websockify = require('koa-websocket')
const app = websockify(new Koa());

let ctxs = [];

app.ws.
        use(async (ctx, next) => {
            ctxs.push(ctx)
            
            return next(ctx)
        })
        .use(route.all('/echo', async (ctx) => {
            ctx.websocket.on('message', (message) => {
                console.log(`客户端数据:${message}`)
                for (let i = 0; i < ctxs.length; i++) {
                    if(ctx == ctxs[i]) continue
                    ctxs[i].websocket.send(message)
                }
            })
        }))

app.listen(3000, "127.0.0.1")

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!