相关疑难解决方法(0)

Socket.IO - 如何获取连接的套接字/客户端列表?

我正在尝试获取当前连接的所有套接字/客户端的列表.

io.sockets 遗憾的是,它没有返回数组.

我知道我可以使用数组保留自己的列表,但不要认为这是一个最佳解决方案有两个原因:

  1. 冗余.Socket.IO已经保留了此列表的副本.

  2. Socket.IO提供了为客户端设置任意字段值的方法(即:),socket.set('nickname', 'superman')所以如果我要维护自己的列表,我需要跟上这些变化.

救命?

node.js socket.io

144
推荐指数
14
解决办法
21万
查看次数

在socket.io中的聊天室中有多少人

我现在有这个代码设置缺口和房间:

io.sockets.on('connection', function(client){
    var Room = "";
    client.on("setNickAndRoom", function(nick, fn){
        client.join(nick.room);
        Room = nick.room;
        client.broadcast.to(Room).emit('count', "Connected:" + " " + count);
        fn({msg :"Connected:" + " " + count});
    });
Run Code Online (Sandbox Code Playgroud)

我想知道我怎么能得到有多少人连接到一个特定的聊天室......比如Room.length

客户端 :

function Chat(){
    this.socket = null;
    this.Nickname = "";
    this.Room = "";
    var synched = $('#syncUp');
    this.Connect = function(nick, room){ 
        socket =  io.connect('http://vybeing.com:8080');    
        Nickname = nick;
        Room = room;
        //conectarse
        socket.on('connect',function (data) {
            socket.emit('setNickAndRoom', {nick: nick, room: room}, function(response){
                $("#connection").html("<p>" + response.msg + "</p>");
            });
        });
}
Run Code Online (Sandbox Code Playgroud)

我找到了这个,但它给出了undefined:

count …
Run Code Online (Sandbox Code Playgroud)

javascript node.js socket.io

36
推荐指数
5
解决办法
4万
查看次数

类型错误:io.sockets.clients 不是函数

我正在按照此链接中的教程进行操作(第 7 步)。我成功安装了 node.js 或 socket.js ,但是当我转到该页面并尝试发送图像时,我在服务器上收到此错误

Missing error handler on `socket`.
TypeError: io.sockets.clients is not a function
at Socket.<anonymous> (C:\Users\utente\Projects\webrtc\server.js:30:31)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)
at Socket.onevent (C:\Users\utente\Projects\webrtc\node_modules\socket.io\lib\socket.js:330:8)
at Socket.onpacket (C:\Users\utente\Projects\webrtc\node_modules\socket.io\lib\socket.js:290:12)
at Client.ondecoded (C:\Users\utente\Projects\webrtc\node_modules\socket.io\lib\client.js:193:14)
at Decoder.Emitter.emit (C:\Users\utente\Projects\webrtc\node_modules\socket.io\node_modules\socket.io-parser\node_modules\component-emitter\index.js:134:20)
at Decoder.add (C:\Users\utente\Projects\webrtc\node_modules\socket.io\node_modules\socket.io-parser\index.js:247:12)
at Client.ondata (C:\Users\utente\Projects\webrtc\node_modules\socket.io\lib\client.js:175:18)
at emitOne (events.js:77:13)
Run Code Online (Sandbox Code Playgroud)

我的 server.js 文件是

var os = require('os');
var static = require('node-static');
var http = require('http');
var socketIO = require('socket.io');

var fileServer = new(static.Server)();
var app = http.createServer(function (req, res) {
fileServer.serve(req, …
Run Code Online (Sandbox Code Playgroud)

node.js socket.io

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

node.js ×3

socket.io ×3

javascript ×1