0

我在服务器上有以下代码:

var game = io.listen(app);

game.sockets.on('connection', function(socket){
    storePlayers(socket.id);
    //Only the player the connects gets this message
    socket.emit('firstTime', {message: 'Welcome!'});

    //If a player disconnects, a message will be sent to all the sockets.
    socket.on('disconnect', function(){
        game.sockets.emit('exit', {message: 'Player ' + socket.id + ' left the game...!'});
    });

    //When a player connects, all the players will get this message.
    game.sockets.emit('entrance', {message: 'Player ' + socket.id + ' is online'});
});

我想掌握这个storePlayers(id)功能。这样做的原因是当套接字连接时,应该socket.id在客户端使用特定对象创建一个对象。

我将如何去做这样的事情?

4

1 回答 1

1

据我了解,您希望客户端在连接到您的id服务器时发送一个。您可以通过在客户端连接到您的服务器后发送一条消息来实现此目的。

客户端

var socket = io.connect('your_server')    
socket.on('connect', function () {
        clientId = generate_id(); //however you want to generate the id
        socket.emit('newUser', {id: clientId});
    }

然后,您可以在服务器上捕获消息“newUser”并检索已连接客户端的 ID。

于 2013-10-16T05:13:02.650 回答