#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
это такое ? Возможно ли, чтобы вы там ловили ошибки и молча игнорировали их?