0
我有以下层次:Store -> Manager -> Assistant
Socket.io房间/名称空间 - 通配符可能吗?
一个Manager
可以访问一切由Assistant
发送时,Assistant
只能访问什么Manager
具体规定。据我所知,我可以创建namespaces or rooms,例如,我可以创建namespaces or rooms。 manager_assistant1
,manager_assistant2
等
结果:Assistant
(id:1)听manager_assistant1
。没关系。但Manager
呢?是否有可能收听manager_*
?
我当前的客户端只是监听流并输出发送到或发送的数据。那很糟。
服务器
var server = require('http').createServer();
var io = require('socket.io')(server);
io.on('connection', function(client){
client.on('myEvent', function(data) {
// do something with the data
// ...
// return the modified data
io.emit('myEvent', data);
});
});
server.listen(3000, function(){
console.log('listening on port 3000');
});
客户
var socket = io.connect('http://example.com:3000/');
socket.emit('myEvent', {
from: 'assistant1',
to: 'manager',
key: 'value'
});
socket.on('myEvent', function(data) {
var user = 'assistant1'; // or 'manager', 'assistant2', ...
if (data.from == user || data.to == user) {
console.log(data.key);
}
});
任何想法?提前致谢!