Socket.io中的命名空间

本文介绍了Socket.io的命名空间概念,它允许在特定域内发送消息,防止其他域接收。讲解了如何在Egg.js中集成socket.io,包括配置插件和中间件。还提到了客户端连接命名空间的方法,并讨论了一对一和一对多广播。建议使用Socket.io V2版本以简化跨域设置,并强调了保持客户端和服务端监听字段一致的重要性。
摘要由CSDN通过智能技术生成

什么是Socket.io中的命名空间?

所谓的命名空间,在一个域中发消息,只有当前的域的socket能够收到消息,其他域的消息则不能。

  1. 服务端:通过io.of创建命名空间。

  2. 服务端进行广播的时候,也需要使用命名空间。

  3. 客户端向服务端发起连接的时候也需要指定命名空间。

egg.js中如何集成socket.io?

参考文档:https://eggjs.org/zh-cn/tutorials/socketio.html

  1. 安装egg-socket.io
npm i egg-socket.io --save
  1. 在plugin.js中进行插件配置
  io: {
   
    enable: true,
    package: 'egg-socket.io',
  }
  1. 在conig.default.js中进行如下配置
  config.io = {
   
    init: {
   }, // passed to engine.io
    namespace: {
   
      '/': {
   
        connectionMiddleware: [],
        packetMiddleware: [],
      },
    },
  };
  1. 指定io触发的时候连接的中间件
  config.io = {
   
    init: {
   }, 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值