我在客户端有socketio连接到另一端的nodejs所以
所以我的服务同时使用不同的数据为许多用户提供服务
所以在nodejs上有:
io.on("connect",function(socket){
var socket.id = []; /// i know this not gonna work
}):
所以我想制作一个包含每个套接字数据的数组,所以我想获得套接字ID,并使用套接字ID的名称制作一个arry
所以我可以通过其数组访问每个套接字
如果我可以使用socket disconnect上的数据销毁数组
谢谢:D
答案 0 :(得分:0)
您可以使用具有套接字ID的对象作为密钥并包含相关数据。
var socketio = require("socket.io");
var io = socketio.listen(app);
var socketInfo = {};
io.on("connection",function(socket){
socketInfo[socket.id] = [];
socketInfo[socket.id].socket = socket;
socketInfo[socket.id].data = {}; //store socket related data here
socket.on('disconnect', function() {
delete socketInfo[socket.id]
});
}):
为了发射你可以这样做:
var socket = socketInfo[socketID].socket;
socket.emit('message', socketInfo[socketID].data);