Socket.IO на поддоменах с vhost Express.js

У меня на сервере запущены два приложения Express.js.

Простое ванильное приложение под названием «основное приложение» и другой, который использует Socket.IO под названием «socket-app».

У меня есть "главное приложение" работает на & quot; mydomain.com & quot; & Амп; & Quot; сокет-приложение & Quot; работает на поддомене по адресу "socket.mydomain.com"

Я перенаправляю запросы к приложению-сокету через встроенное промежуточное программное обеспечение vhost Express.

- внутри main-app.js -

var express = require('express');
var app = module.exports = express.createServer();
app.use(express.vhost('socket.mydomain', require('./socket-app/app.js')));

app.listen(8080, function(){
  console.log("Express server listening on port %d in %s mode");
});

Это работает нормально, и я вижу, что мое socket-приложение работает на порте 8080 в socket.mydomain

Тем не менее существует проблема с истечением времени ожидания веб-сокетов и неполучением «обновления». событие при запуске приложения Socket.IO через vhost, как обсуждалосьВот.

Поэтому мой вопрос: как я могу передать это «обновление»? событие из моего основного приложения в мое приложение сокетов, чтобы все подключенные сокеты могли слышать, когда кто-то подключается & amp; разъединяет?

Я пытался испустить "обновление" событие из & quot; основного приложения & quot; но, похоже, он не работает.

app.on('upgrade', function(req, socket) {
    socket.emit('upgrade', app);    
});

Что мне здесь не хватает?

Ответы на вопрос(1)

Ваш ответ на вопрос