Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

289
Vistas
How do I implement a socket IO using express which works with Netlify?

These are the 3 main files however I'm not sure how to implement a socket IO that works with netlify. I am trying to add a websocket listener to my express server. How do I do that?

routes.js

const users = require('./controllers/users');
const posts = require('./controllers/posts');
const files = require('./controllers/files');
const comments = require('./controllers/comments');
const chatroom = require('./controllers/chatroom');
const { jwtAuth, postAuth, commentAuth } = require('./auth');
const router = require('express').Router();

// Authentication routers
router.post('/login', users.validate(), users.login);
router.post('/register', users.validate('register'), users.register);
router.post('/forgotPassword', users.forgot);
router.post('/updatepassword', users.updatepassword);
router.post(
  '/changepassword',
  users.validate('changepassword'),
  users.changePassword
);

module.exports = app => {
  app.use('/.netlify/functions/app', router);

  app.get('*', (req, res) => {
    res.status(404).json({ message: 'not found' });
  });

  app.use((err, req, res, next) => {
    if (err.type === 'entity.parse.failed') {
      return res.status(400).json({ message: 'bad request' });
    }
    next(err);
  });
};

app.js

const express = require('express');
const serverless = require('serverless-http');
const morgan = require('morgan');
const cors = require('cors');
const expressValidator = require('express-validator');
const passport = require('passport');
const localStrategy = require('./auth/local');
const jwtStrategy = require('./auth/jwt');

const app = express();

const mongoose = require('mongoose');
const config = require('./config');

const connect = url => {
  return mongoose.connect(url, config.db.options);
};

if (require.main === module) {
  connect(config.db.prod);
  mongoose.connection.on('error', console.log);
}

app.use(cors());
app.use(express.json());
app.use(expressValidator());
app.use(morgan('common'));
app.use(passport.initialize());

passport.use(localStrategy);
passport.use(jwtStrategy);

require('./routes')(app);

module.exports.handler = serverless(app);

index.js

const app = require('./app');
const mongoose = require('mongoose');
const config = require('./config');

const connect = url => {
  return mongoose.connect(url, config.db.options);
};

if (require.main === module) {
  connect(config.db.prod);
  mongoose.connection.on('error', console.log);
}

module.exports = { connect };

Let me know if anything else is needed. Netlify makes stuff a bit harder and when I upload it does not work.

about 4 years ago · Santiago Trujillo
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda