2016-04-04 17 views
0

我想通過它的ID訪問套接字。我看過thisthis stackoverflow的帖子。但是,Socket.io通過ID獲取套接字不工作

io.sockets.connected[socket.id] 

返回未定義。

這也不起作用:

io.to(socket.id).emit("myMessage"); 

套接字連接到一個命名空間(socket.id回報/ playNS#1HhBtUM-6O_YsRwmAAAF)和socket.io版本是1.4.5。我究竟做錯了什麼?

+0

這應該很好地工作 - 我有類似的代碼在github上的項目,我唯一能做的就是跟蹤socketID和會話ID中的對象 –

回答

2

如果一個套接字連接到一個命名空間,socket.id的第一部分包含了名稱空間(如/playNS#1HhBtUM-6O_YsRwmAAAF),但io.sockets.connected屬性,用於插座將/#1HhBtUM-6O_YsRwmAAAF

爲了正確地檢索我用插座io.of('/namespace').connected[socket.id]

同樣,io.of("/namespace").to(socket.id).emit("myMessage");發送消息

相關問題