node.js - que - expresar 4.0, sesión expresa con mensaje de advertencia impar
node js web app (4)
Como dicen las advertencias, los valores predeterminados cambiarán, por lo que quieren asegurarse de que estableciendo los valores de forma explícita ahora, no se ejecutarán comportamientos inesperados cuando los valores predeterminados cambien (en el futuro cercano).
Estoy intentando trabajar configurando una aplicación nodejs usando express 4.x. Después de tropezar con los problemas de eliminación de middleware, finalmente lo hice funcionar.
sin embargo, hubo un par de mensajes de advertencia en la siguiente línea de código:
app.use(session({secret: ''<mysecret>''})
estas advertencias fueron:
Sun, 29 Jun 2014 12:45:10 GMT express-session deprecated pass resave option; default value will change at lib/config/express.js:55:11
Sun, 29 Jun 2014 12:45:10 GMT express-session deprecated pass saveUninitialized option; default value will change at lib/config/express.js:55:11
en la documentación, los valores predeterminados para resave y saveUninitialized son verdaderos.
entonces, cambiando el código para leer
app.use(session({secret: ''<mysecret>'',
saveUninitialized: true,
resave: true}));
se deshizo de las advertencias
Entonces, para llegar al punto de la pregunta:
¿Por qué debería tener que pasar estos valores si son los valores predeterminados, y por qué no tengo que pasar las otras opciones?
Encontré un problema útil:
https://github.com/expressjs/session/issues/56
app.use(session({
secret: cookie_secret,
resave: true,
saveUninitialized: true
}));
No tengo suficientes representantes para agregar esto como comentario. Agregué esto para mi valor predeterminado de la respuesta de Ben.
secret: process.env.SESSION_SECRET || ''<mysecret>'',
app.use(session({
cookieName: ''session'',
secret: ''eg[isfd-8yF9-7w2315df{}+Ijsli;;to8'',
duration: 30 * 60 * 1000,
activeDuration: 5 * 60 * 1000,
httpOnly: true,
secure: true,
ephemeral: true,
resave: true,
saveUninitialized: true
}));