我想知道哪个客户端在到达服务器时发送了一个事件。例如:
var socket = require(socket.io')(port);
socket.on("ask question", function(data){
var socketid = // ?
//respond to sender
socket.sockets.connected[socketid].emit("Here's the answer");
});
如何获取事件发件人的套接字ID?
答案 0 :(得分:0)
您的服务器端逻辑有点偏。客户端连接,这是客户端套接字显示的位置,也是您监听特定客户端事件的位置。通常,它看起来像这样:
var io = require("socket.io")(port);
io.on('connection', function (socket) {
socket.on('ask question', function (data) {
// the client socket that sent this message is in the
// socket variable here from the parent scope
socket.emit("Here's the answer");
});
});
这显示在socket.io docs here。
中