Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

86
Views
Heroku y Socket.io no escuchan en el mismo puerto

Así que estoy codificando esta web en Heroku e intento integrar un socket en la configuración. Pero el problema es que no puedo hacer que mi aplicación Heroku y el servidor socket.io escuchen el mismo puerto.

El puerto predeterminado para Heroku parece ser 5000 y para socket.io parece ser 3000.

Si trato de cambiar cualquiera de los puertos al mismo que el otro, aparece el error EADDRINUSE.

Sin embargo, si no lo hago, entonces los dos procesos parecen operar por separado.

cuando ejecuto npm start , la terminal dice

 Listening on 5000 listening on xoxo 3000

Y cuando encendí localhost:3000 , en realidad funciona (el socket.io), pero en localhost:5000 obviamente no funciona. De hecho, tampoco funciona en el sitio web que Heroku generó para mí (solo apareció localhost: 5000)

Las líneas de código a continuación son de mi archivo index.js.

¿Cómo podría arreglar esto? Gracias de antemano.

 const express = require('express'); const app = express(); const path = require('path') const http = require('http'); const server = http.createServer(app); const { Server } = require("socket.io"); const io = new Server(server); const PORT = process.env.PORT || 5000; const INDEX = '/index.ejs' app.listen(PORT, () => console.log(`Listening on ${ PORT }`)) app.use(express.static(path.join(__dirname, 'public'))); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'ejs'); app.get('/', (req, res) => res.render('index')); io.on('connection', (socket) => { socket.on('playerEvent', (msg) => { console.log(msg); }); console.log('a user connected'); socket.on('disconnect', () => { console.log('user disconnected'); }); socket.broadcast.emit('hi'); }); server.listen(3000, () => { console.log('listening on xoxo 3000'); }); //socket.on('playerEvent', function(msg){ // console.log(msg); //});
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!