.leaveAll()
取消订阅房间(例如 chatroom7
)的所有成员,以及他们当前订阅的所有其他房间,除了与他们的套接字 ID 关联的自动房间。
sails.sockets.leaveAll(roomName, cb);
参数 | 类型 | 详情 | |
---|---|---|---|
1 | roomName | 要撤离的房间。请注意,此房间的成员将被强制离开所有房间,而不仅仅是这个房间。 | |
2 | cb | 一个可选的回调函数,当操作在当前服务器上完成时(有关更多信息,请参阅下面的说明),或者遇到致命错误时,将调用此函数。在发生错误的情况下,将使用单个参数 (err ) 调用它。 |
在控制器操作中
unsubscribeFunRoomMembersFromEverything: function(req, res) {
sails.sockets.leaveAll('funRoom', function(err) {
if (err) { return res.serverError(err); }
// Unsubscribed all sockets in "funRoom" from "funRoom".
// And... from every other room too.
return res.ok();
});
}
- 在多服务器环境中,回调函数 (
cb
) 将在当前服务器上完成.leaveAll()
调用时执行。这不能保证集群中的其他服务器已经完成运行该操作。
req
)