我正在尝试使用shoe + dnode + sockjs设置一个简单的Scenerio,但我不知道如何向连接到Web应用程序的所有用户广播消息。
您知道是否有管理该功能的方法吗?还是应该用“手工”制作?
最佳答案
AFAIK,您必须按照自己的意愿手动滚动。这是我的工作:
server.js:
var shoe = require('shoe')
var connectedClients = {}
var conCount = 0
var sock = shoe(function(clientStream) {
clienStream.id = conCount
connectedClients[clientStream.id] = clientStream
conCount += 1
})
服务器端程序中的其他位置:
//write to all connected clients
Object.keys(connectedClients).forEach(function(cid) {
var clientStream = connectedClients[cid]
clientStream.write(yourData)
})
注意,您将要引入其他逻辑以仅写入已连接的客户端,因此您需要从
connectedClients
中删除断开连接的客户端,例如delete connectedClients[id]
。希望有帮助。
关于node.js - 用鞋袜广播,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18889025/