我正在尝试通过redis与Django和Node.js进行通信,但是当我尝试在Node.js中获取on('message')事件时,我得到了2次事件......
我有这个:
io.sockets.on('connection', function (socket) {
//Subscribe to chat channel
sub.subscribe('chat');
//Get the event 'message' from Django
sub.on('message', function(channel, message){
console.log("counter");
});
.
.
.
我打印“计数器”3次,当我从另一个客户端连接时,我得到4,5,6,......
我怎样才能举办活动?
答案 0 :(得分:0)
确保您正在聆听正确的频道
sub.on('message', function(channel, message){
switch (channel) {
case 'chat':
console.log("counter");
break;
}
});
答案 1 :(得分:0)
在socket.io connection
侦听器中添加侦听器,因此每次打开新连接时,都会再次附加侦听器。只需将message
侦听器附加到connection
侦听器之外。