如何限制Sailsjs模型室套接字事件的传递(关联安全性)

时间:2014-07-19 03:08:19

标签: socket.io sails.js

我正在使用sailsjs套接字,我试图找到一种方法来增加房间事件的安全性。

基本上我有一个与汽车收藏有1-many关系的用户集合。

我想让我的应用在用户创建新车时听取create事件,同时确保我没有泄露其他用户创建事件。

当我使用Car.subscribe(req.socket)

Car.publishCreate({
  id: 3,
  color: 'blue',
  user: 1
})

所有正在聆听Car模型房间的用户都会收到更新。

我知道我可以指定套接字以省略第二个参数:Car.publishCreate( values, [socketToOmit] ),但是对于许多用户来说,这变得非常重要。

是否有一种简单的方式来通知/限制"创建"对模型房间中特定用户的事件?

1 个答案:

答案 0 :(得分:0)

在redis中,有一个支持subpub的命名Channel,你可以将消息推送到命名的Channel,例如ToJohn,并重定向套接字以获取该命名Channel上的消息。

祝你好运。