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

286
Vistas
¿Cómo mantener al usuario conectado incluso después de recargar el archivo principal (index.js)?

Tengo una aplicación Express que usa express-session y el passport para mantener la sesión en marcha.

Estas tecnologías mantienen a los usuarios conectados hasta que presionan un botón de cierre de sesión.

Pero, hay una excepción que hace que los usuarios cierren sesión.

Uso PM2 para recargar mi archivo index.js. El comando está abajo.

pm2 reload all

Cuando ejecuto el comando anterior, el archivo index.js se vuelve a cargar y todo se ve bien.

Pero me di cuenta de que cada vez que vuelvo a cargar el archivo index.js con este comando, los usuarios que inician sesión se desconectan, lo que no debería suceder.

¿Alguien puede decirme cómo mantener a los usuarios conectados incluso después de volver a cargar el archivo index.js?

Parte del código en el archivo index.js:

 var express = require("express"); var app = express(); var cookieParser = require("cookie-parser"); var bodyParser = require("body-parser"); var session = require("express-session"); passport.serializeUser(function(user, done) { done(null, user.email); }); passport.deserializeUser(function(username, done) { findByUsernameDb(username, function(err, user) { if (err) { return done(err); } done(err, user); }); }); passport.use("login", new LocalStrategy({ usernameField: "email", passwordField: "password" }, function(username, password, cb) { findByUsernameDb(username, function(err, user) { if (err) { return cb(err); } if (!user) { return cb(null, false, { message: "Incorrect email." }); } bcrypt.compare(password, user.password, function(err, res) { if (res) { return cb(null, user); } else { return cb(null, false, { message: "Incorrect password." }); } }); }); } )); app.use(cookieParser('hello')); app.use(bodyParser.urlencoded({ extended: false })); app.use(session({ secret: 'world', resave: true, saveUninitialized: true })); app.use(flash()); app.use(passport.initialize()); app.use(passport.session());
about 4 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Utilice uno de los motores de almacenamiento de sesiones persistentes. Aquí hay una lista https://github.com/expressjs/session#compatible-session-stores

about 4 years ago · Santiago Trujillo Denunciar
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