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

148
Vistas
Problema de cierre de sesión de Node js

Creé una aplicación Node js, estoy creando una sesión usando

 app.use(session({ resave: true , rolling: true, secret: '2853554111' , genid: function(req) { return uuid(); }, saveUninitialized: true }));

y así es como estoy guardando mis datos en sesión.

 req.session.user=req.body.username;

pero después de un tiempo obtengo un valor indefinido del usuario en la sesión, y esto sucede con mucha frecuencia. No estoy seguro de qué está mal con el código.

Así es como se ve mi app.js

 var createError = require('http-errors'); var express = require('express'); var path = require('path'); var cookieParser = require('cookie-parser'); var logger = require('morgan'); var session = require('express-session'); var indexRouter = require('./routes/index'); var usersRouter = require('./routes/users'); var bodyParser = require('body-parser'); var uuid = require("uuidv4"); var app = express(); var login = require('./routes/login-admin'); var adminHome = require('./routes/adminHome'); var pmLogin = require('./routes/pmLogin'); var pmHome = require('./routes/pmHome'); var confirmEmail = require('./routes/confirmEmail'); app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); app.use(express.static('public')); app.use(logger('dev')); //app.use(express.json()); app.use(express.json({limit: '5120mb'})); //app.use(bodyParser.json()) app.use(bodyParser.json({ limit: '5120mb' })) app.use(express.urlencoded({limit: '5120mb', extended: false })); // view engine setup app.use(session({ resave: true , rolling: true, secret: '2853554111' , genid: function(req) { return uuid(); }, saveUninitialized: true })); app.use('/', indexRouter); //app.use('/', login); app.use('/users', usersRouter); app.use('/login-admin', login); app.use('/adminHome', adminHome); app.use('/login', Login); app.use('/Home', Home); app.use('/confirmEmail', confirmEmail);
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

puede usar el atributo store de express-session para guardar su sesión en la base de datos. En este enlace se dan varios ejemplos. A continuación se muestra el fragmento de conexión del nodo js a Mysql

 const MySQLStore = require('express-mysql-session')(session); const options = { host: "xx.xx.xx.xx", // setting connection options user: 'node', password: "xxxxxxxx", database: 'xxxxx', socketPath: 'xxxxx' //required only if using GAE }; const sessionStore = new MySQLStore(options); app.use(session({ resave: true , rolling: true, secret: 'xxxxxx' , saveUninitialized: true, cookie: { maxAge: 86400000 }, store: sessionStore, }));

y usted es bueno para ir.

about 4 years ago · Juan Pablo Isaza 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