Отлично работает в версии 2.x, но не в версии 4.1.2

#node.js #socket.io

Вопрос:

Я хочу использовать api и сокет.ввод-вывод на том же порту. Таким образом, на хереку это дешевле. Проблема в том, что сокет.ввод-вывод отлично работает в версии 2.x, но не в версии 4.1. Он также не выдает никаких ошибок. В чем может быть проблема? Коды такие;

 const app = require('express')();
const http = require('http').createServer(app);

const userRouter = require('./router/userRouter');

const errMiddleware = require('./middleware/errMiddleware');

const PORT = process.env.PORT || 3000;

app.use('/api/users', userRouter);


app.get('/', (req, res) => {
  res.json({ "mesaj": "hoşgeldin!" });
});

app.use(errMiddleware);

http.listen(PORT, () => {
  console.log(`Listening on ${PORT}`);
});


const io = require("socket.io")(http, {
  cors: {
    origin: "*",
   methods: ["GET", "POST"],
  },
});

io.on("connection", (socket) => {

console.log("----- connection");

  socket.on("odaya_gir", (odaId, data) => {
    socket.join(odaId);
  });

  socket.on("disconnect", () => {
    console.log("****** disconnect");
  });


});

 

Комментарии:

1. «Не работает» — неверное описание проблемы … Откуда вы знаете, что это «не работает»? И что же errMiddleware это такое ? Возможно ли, чтобы вы там ловили ошибки и молча игнорировали их?