Я рассмотрел несколько других подобных проблем, но ни одна из них не помогла мне решить мою проблему. Недавно я начал обновлять свой личный проект, и мне пришлось перекодировать репо, когда он обнаружил, что он не работает в сети. После запуска npm i для установки моих пакетов он открывается локально, но консоль начинает заполняться этой ошибкой: http://localhost:3000/socket.io/?EIO=3&transport=polling&t=MWbrM4h 404 (не найдено)
Я попытался перейти на прослушивание по http или напрямую по io, основываясь на других ответах здесь, но без изменений. Вот мой код.
const express = require('express'),
massive = require('massive'),
bodyPar = require('body-parser'),
CombatCtrl = require('./Controllers/CombatCtrl'),
AuthCtrl = require('./Controllers/AuthCtrl'),
EnemyCtrl = require('./Controllers/EnemyCtrl'),
path = require('path'),
socket_io = require('socket.io'),
sharedsession = require("express-socket.io-session");
require('dotenv').config();
const session = require('express-session')({
secret: process.env.SESSION_SECRET,
resave: false,
saveUninitialized: true
});
const app = express()
app.use(bodyPar.json())
app.use(session)
app.use(express.static(`${__dirname}/../build`));
app.get('*', (req, res) => {
res.sendFile(path.join(__dirname, '../build/index.html'));
});
const {
SERVER_PORT
} = process.env
const server = app.listen(SERVER_PORT, () => {
console.log('How do you want to do this?', SERVER_PORT)
})
const io = socket_io(server)
io.use(sharedsession(session, {
autoSave: true
}));
io.on('connection', function(socket) {
socket.emit('start', /*emit params sent as obj*/ )
//I have stuff in here, but it 's irrelevant to the landing page
}