Python: отправка уведомлений в Node.js Socket.io с помощью Redis PubSub - PullRequest
0 голосов
/ 11 июня 2019

Теперь мой проект использует Django в качестве API и NodeJs (SocketIO) в качестве сервера, который требует Realtime для отправки уведомлений

Я пытаюсь отправить уведомления в Node.js Socket.io, используя Redis PubSub, ноне успехПожалуйста, проверьте мой код ошибки:

Мой код Python.Я публикую в myChannel пример сообщения:

def test_vew(request):
    REDIS_SERVER = redis.Redis(host='localhost', port=6379, db=0)
    REDIS_SERVER.publish("myChannel", "Demo Message")
    return Response({ "success": True }, status=200)

Мой код NodeJS:

var app = require('http').createServer()
const PORT = process.env.PORT || 3000;
var redis = require('redis').createClient();
const server = app.listen(3000, () => console.log('listening on port 3000'))
//sockets
const io = require('socket.io').listen(app)

redis.subscribe('myChannel', (message) => {
  console.log(`Got message ` + message)
})
io.sockets.on("connection", function(socket) {
  console.log("A User Connected to SocketIO");
  redis.on("pmessage", function(pattern, channel, message) {
    console.log(channel, message);
  });
});

Когда я запускаю функцию в Django, My NodeJS Socket Subscribee не может получить сообщение (ничего не отображается в консоли).Я не знаю причину.Пожалуйста, помогите мне об этой проблеме!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...