.blast()
向连接到服务器的所有套接字广播消息(如果您使用 Redis 部署了多服务器环境,则向集群中的任何服务器广播)。
sails.sockets.blast(data);
或者
sails.sockets.blast(eventName, data);
sails.sockets.blast(data, socketToOmit);
sails.sockets.blast(eventName, data, socketToOmit);
参数 | 类型 | 详情 | |
---|---|---|---|
1 | eventName | 可选。默认为 'message' 。 |
|
2 | data | 要发送的消息数据。 | |
3 | socketToOmit | 可选。如果提供,则与该套接字请求关联的套接字**不会**接收广播到其他所有人的消息。当广播事件由不需要再次听到该事件的请求用户触发时,这很有用。 |
在控制器操作中...
sails.sockets.blast('user_logged_in', {
msg: 'User #' + user.id + ' just logged in.',
user: {
id: user.id,
username: user.username
}
}, req);
- 在将
req
传递给此方法之前,请确保检查req.isSocket === true
。为了省略套接字,当前的req
必须来自套接字请求,而不仅仅是任何 HTTP 请求。