大家好,感谢您的时间和帮助。
我需要一个使用socket.io-redis的简单示例,请发表评论。
我阅读了文档,但我不明白。
谢谢你,
socket.io-redis 文档没有提到您实际上需要运行 redis 服务器,因此您可能已经忘记了这一点。 socket.io-redis 插件使用 redis 服务器的 pub/sub 客户端连接多个 socket.io 实例。
从以下位置下载并安装 Redis 服务器https://redis.io https://redis.io
-
将 redis 插件添加到您的 socket.io 实例中:
var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server);
var redis = require('socket.io-redis');
io.adapter(redis({ host: 'localhost', port: 6379 }));
6379 是默认的 Redis 端口,如果您在同一台服务器上运行 Node 和 Redis,则为 localhost。
-
添加您需要的socket.io和socket.io-redis功能
var your_namespace_socket = io.of('/your-namespace');
your_namespace_socket.on('connection', function(socket){
socket.on('join', function(room){
socket.join(room);
//log other socket.io-id's in the room
your_namespace_socket.adapter.clients([room], (err, clients) => {
console.log(clients);
});
});
});
-
使用socket.io启动服务器
server.listen(3000, function(){
logger.debug('listening on *:3000');
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)