我正在尝试使用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/

10-09 21:46