0
私は単純なnodejsソケットプログラムを書いて、接続しているユーザのリストを表示しようとしています。 usernameとsocket.idのマッピングに問題があります。ソケット接続にnodejsポストパラメータを渡す
ここでは、サーバー側のコードは次のとおりです。
app.post('/login', function(req, res){
var user = {
id: socket.id,//how to get this socket.id?
username: req.body.username,
loggedInTime: new Date()
};
connectionsArray.push(user);
res.render('main');
});
io.on('connection', function(socket){
console.log('Connecting user ' + socket.id);
if (connectionsArray.length > 0) {
setInterval(function(){
io.sockets.emit('connectionsArray', connectionsArray);
},1000);
}
socket.on('disconnect', function() {
connectionsArray = connectionsArray.map(function(conn){
return conn.id != socket.id;
});
console.log('user disconnected with' + socket.id);
});
});
いくつかのいずれかが私がポスト要求内socket.id取得することができますか? または、io.connectionブロックに投稿要求情報(ユーザー)を渡すことは他の方法ですか?
ご提案いただきありがとうございますが、ここでio.connectionブロックに投稿リクエストパラメータを渡します。 usernameとsocket.idの間のマッピングを維持する必要があります –