Estou tentando trabalhar através da configuração de um aplicativo nodejs usando express 4.x. Depois de tropeçar nos problemas de remoção de middleware, finalmente consegui fazer funcionar.
no entanto, havia algumas mensagens de aviso na seguinte linha de código:
app.use(session({secret: '<mysecret>'})
esses avisos foram:
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
na documentação, os valores padrão para resave e saveUninitialized são verdadeiros.
então, mudando o código para ler
app.use(session({secret: '<mysecret>',
saveUninitialized: true,
resave: true}));
livrou-se dos avisos.
Então, para chegar ao ponto da questão:
por que devo passar esses valores se eles são os valores padrão e por que não devo passar as outras opções?
resave
esaveUnitialized
são booleanos cujo padrão étrue
1.7.2: github.com/expressjs/sessionsaveUninitialized
. Copiei o que você postou e desperdicei 45 minutos tentando descobrir se o aviso não está desaparecendo. Mais tarde, percebi que havia um erro de grafia. lol: DRespostas:
Como dizem os avisos, os valores padrão mudarão de forma que eles desejam garantir que, ao definir os valores explicitamente agora, você não terá um comportamento inesperado quando os padrões mudarem (em um futuro próximo).
fonte
Achei o problema útil:
https://github.com/expressjs/session/issues/56
fonte
false
( github.com/expressjs/session#resave , github.com/expressjs/session#saveuninitialized ).Não tenho representantes suficientes para adicionar isso como comentário. Eu adicionei isso para o meu valor padrão da resposta de Ben.
fonte
fonte