Когда они пытаются прослушать мое приложение для уведомления, они получают ошибку: NET_CONNECTION_TIMEOUT.
Вот моя конфигурация socket.js.
Когда я пытался использовать это.
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var Redis = require('ioredis');
var redis = new Redis();
redis.subscribe('notifications', function(err, count) {
});
redis.on('message', function(channel, message) {
console.log('Message Recieved: ' + message);
message = JSON.parse(message);
io.emit(channel + ':' + message.event, message.data);
});
http.listen(3000, function(){
console.log('Listening on Port 3000');
});
Результат: Listening to port 3000
Но когда я попробовал это.
var app = require('express')();
var server = require('http').Server(app);
var io = require('socket.io')(server);
var redis = require('redis');
server.listen(8080);
io.on('connection', function (socket) {
console.log("New client connected: Port 8080");
var redisClient = redis.createClient();
redisClient.subscribe('message');
redisClient.on("message", function(channel, message) {
socket.emit(channel, message);
});
socket.on('disconnect', function() {
redisClient.quit();
});
});
Я ничего не получил ... он просто зависнет.