【发布时间】:2012-08-13 03:50:45
【问题描述】:
我在我的网站上建立了一个通知系统。我有一些成员团体。当某个组的成员发布内容时,应通知同一组的其他成员。用户刷新页面时会出现通知。然而,世界正在实时运行。谷歌搜索这个问题向我推荐了 Node.js(不确定是最好的方法)。我现在可以:创建服务器,连接到数据库,查询数据库,使用 socket.io 向所有连接的客户端发送广泛消息...
但到目前为止我不能做/理解的是指定应该将消息(通知)传递给哪些用户。
环顾四周,这种方式看起来是我想要的:
var socket = io.listen(server);
socket.on('connection', function(client) {
client.on('message', function(msg) {
broadcast(msg); // broadcast message to all clients
// OR
socket.clients[session_id].send(msg); // send message to one client
});
client.on('disconnect', function( ) {
console.log('Client Disconnected.');
});
});
不知道session_id是什么,和用户登录时创建的session_id一样吗? 真的厌倦了寻找一些直接的解决方案,我们将非常感谢任何帮助。
【问题讨论】:
-
请注意,一个组可以包含数百个用户。真的像私信吗?无论如何,谢谢,将其挖掘出来。
-
是的,发送消息的过程是一样的。
-
en.wikipedia.org/wiki/Publish_subscribe 发布-订阅模式可能值得一读。
-
Git 吧。谢谢ebohlman。
标签: javascript mysql node.js real-time