Node.js / socket.io设计混乱

时间:2015-09-03 12:25:09

标签: javascript node.js socket.io real-time

我想知道我是否以正确的方式做事

我的系统中有一个通知系统,我已按以下方式实施。

服务器

 socket.on('do_activity',function(packet){
 io.emit("notification_found_"+packet.receiver_id,packet);
});

客户端:

socket.on("notification_found_10",function(){
 //do some action
});

注意:服务器会通知用户用户发现的某些活动。数据包变量包含目标用户ID(在我的情况下为10)。

服务器侦听do_activity事件侦听器并向客户端发送notification_found事件

问题:

  • 1)服务器传播“notification_found_<user i>”事件 每个用户都有用户的后缀ID。这是正确的方法吗? 实施通知系统?
  • 2)由于浏览器中的任何恶意用户都可以发出do_activity 事件,如何保护它?

非常感谢任何形式的帮助。

1 个答案:

答案 0 :(得分:2)

作为上面发布的评论者,如果将通知仅发送给子组/个人,则向所有用户发送通知是没有意义的。

我建议您查看会议室和名称空间,以隔离此类通知的分发。请从documentation本身进行检查。