Файл донор:
const express = require("express");
const app = express();
server = app.listen(11050, function () {
console.log("server is running on port 11050");
});
const io = require("socket.io")(server);
io.on("connection", (socket) => {
console.log("Users component is connected");
socket.on("disconnect", () => {
console.log("Users component was disconnected");
});
setInterval(() => {
socket.emit("newNumber", generateRandomNumber());
}, 1000);
});
function generateRandomNumber() {
let number = Math.floor(Math.random() * 100);
const dateTime = new Date().getTime();
let item = {
x: dateTime,
y: number,
};
return item;
}
module.exports = { io };
Файл наследник:
const { io } = require('путь_к_файлу_донору');
io.on('connection', (socket) => {
// Логика текущего роута
})
А если ты хочешь app.post('/socketRoute') - то читай документацию сокетов, там про румы всё разжёвано до мелочей, будешь вешать пустые роуты в экспресс по типу => app.post('/needFuckingSocketRoom', (req, res) => {}); и уже открывать сокет соединение определённого рума после запроса на этот роут, это костыль как по мне, не копался в подобном глубоко