Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何列出socket.io nodejs服务器上的房间大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
how to create socket.io multicast groups问题进展之后,我发现房间是一个很好的方式来做我所需要的。

但是,如果没有额外的数据结构,那么了解所有的房间是非常好的。

是否可以从服务器套接获取服务器上所有房间的列表?

解决方法

简短的答案:

io.sockets.adapter.rooms

我分析了io:

我得到以下输出

{ server: 
   { stack: 
      [ [Object],[Object],[Object] ],connections: 3,allowHalfOpen: true,watcher: { host: [Circular],callBACk: [Function] },_events: 
      { request: [Function],connection: [Function: connectionListener],listening: [Object],upgrade: [Object] },httpAllowHalfOpen: false,cache: {},setTings: { home: '/',env: 'development',hints: true },redirects: {},isCallBACks: {},_locals: { setTings: [Object],app: [Circular] },dynamicViewHelpers: {},errorHandlers: [],route: '/',routes: 
      { app: [Circular],routes: [Object],params: {},_params: [],middleware: [Function] },router: [Getter],__usedRouter: true,type: 'tcp4',fd: 7 },namespaces: 
   { '': 
      { manager: [Circular],name: '',sockets: [Object],auth: false,flags: [Object],_events: [Object] } },sockets: 
   { manager: [Circular],sockets: { '210837319844898486': [Object] },flags: { endpoint: '',exceptions: [] },_events: { connection: [Function] } },setTings: 
   { origins: '*:*',log: true,store: 
      { options: undefined,clients: [Object],manager: [Circular] },logger: { colors: true,level: 1 },heartbeats: true,resource: '/socket.io',transports: 
      [ 'websocket','htmlfile','xhr-polling','jsonp-polling' ],authorization: [Function],'log level': 1,'close timeout': 25,'heartbeat timeout': 15,'heartbeat interval': 20,'polling duration': 20,'flash policy server': true,'flash policy port': 843,'destroy upgrade': true,'browser client': true,'browser client minification': false,'browser client etag': false,'browser client handler': false,'client store expiration': 15 },handshaken: 
   { '210837319844898486': 
      { headers: [Object],address: [Object],time: 'Mon Jul 18 2011 00:53:27 GMT+0200 (CEST)',xdomain: false,secure: undefined,PHPSESSID: '7qo6cht3q0rskhfes4eesb2d05' } },connected: { '210837319844898486': true },open: { '210837319844898486': true },closed: {},closedA: [],rooms: 
   { '': [ '210837319844898486' ],'/public-alfred': [ '210837319844898486' ] },roomClients: { '210837319844898486': [ '': true,'/public-alfred': true ] },oldListeners: [ [Function] ],_events: 
   { 'set:origins': [Function],'set:flash policy port': [Function],'set:transports': [Function] } }

一个客户端io.sockets.adapter.rooms加入房间“public-alfred”后,包含:

{ '': [ '210837319844898486' ],'/public-alfred': [ '210837319844898486' ] }

大佬总结

以上是大佬教程为你收集整理的node.js – 如何列出socket.io nodejs服务器上的房间全部内容,希望文章能够帮你解决node.js – 如何列出socket.io nodejs服务器上的房间所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。