Взял код из примеров, но получил такую вот проблему, если вызвать subscribe и ещё раз subscribe то подпишется только первый, когда отправляю send, то сообщение отправляется на первый subscribe , а второй только после этого подписывается и принимает уже второе сообщение ну и по кругу в общем
'use strict';
const express = require('express');
const parser = require('body-parser');
const events = require('events');
const dispatcher = new events.EventEmitter();
const app = express();
app.post('/send', parser.json(), (req, res) => {
dispatcher.emit('message', JSON.stringify(req.body));
res.set('Content-Type', 'text/plain;charset=utf-8');
res.end('ok');
});
app.get('/send', (req, res) => {
dispatcher.emit('message', "fkfkf");
res.set('Content-Type', 'text/plain;charset=utf-8');
res.end('ok');
});
app.get('/subscribe', (req, res) => {
console.log("subscribe")
res.set('Content-Type', 'text/plain;charset=utf-8');
res.set('Cache-Control', 'no-cache, must-revalidate');
dispatcher.once('message', message => setTimeout(()=>res.end(message),Math.random() * (1000 - 0)));
});
app.use(express.static('./client'));
app.listen(4000);