下面是我初始化和发射的方式,但我没有发现任何错误,我的服务器也没有收听,接收任何事件。
const io = require('socket.io-emitter')({
host: 127.0.0.1,
// path: do i need this ?
port: redisUri.port,
pub: pub, // is the key required to be the same as the app ?
sub: sub, // is the key required to be the same as the app ?
});
io.emit('test', 'test'})
我尝试了很多变化,有人可以启发我如何调试这个?
我试图在对象之前添加一个redis href。
答案 0 :(得分:0)
我发现了错误,
问题在于pub和子套接字
这是解决方案:
var pub = redisPassword ? redis.createClient(6379, localhost, {return_buffers: true, auth_pass: redisPassword}) : undefined;
var sub = redisPassword ? redis.createClient(6379, localhost, {detect_buffers: true, return_buffers: true, auth_pass: redisPassword}) : undefined;
socketio.adapter(require('socket.io-redis')({host:localhost,port:6379,pubClient:pub,subClient:sub}));
这就是问题所在:
而不是在未定义的密码检查中,我创建了另一个客户端,更容易将其设置为默认值。如果我可以改进我的代码,请告诉我。谢谢。