express 4.0 , express-session avec un étrange message d'avertissement
Je suis en train de travailler à travers la mise en place d'une application nodejs express 4.x. Après avoir trébuché à travers le middleware-problèmes de suppression, j'ai enfin réussi à le faire fonctionner.
cependant, il y avait un couple de messages d'avertissement dans la ligne de code suivante :
app.use(session({secret: '<mysecret>'})
ces mises en garde ont été :
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
dans la documentation, les valeurs par défaut pour réenregistrer et de saveUninitialized sont vraies.
donc, en changeant le code pour lire
app.use(session({secret: '<mysecret>',
saveUninitialized: true,
resave: true}));
se débarrasser des mises en garde.
Donc, de faire le point de la question:
pourquoi devrais-je passer ces valeurs, si elles sont les valeurs par défaut, et pourquoi n'ai-je pas passer dans l'autre options ?
- parce que ces valeurs par défaut change et, quand ils le font, vous pouvez éviter les erreurs qui peuvent causer explicitement de les passer au middleware
- J'aime la façon dont ils obligeance de NE PAS vous dire ce que les options par défaut sont
- À la fois le
resave
etsaveUnitialized
booléens par défaut àtrue
en 1.7.2: github.com/expressjs/session - Il devrait être
saveUninitialized
. J'ai copié ce que vous avez posté et gaspilleur 45 minutes à essayer de comprendre wh l'avertissement n'est pas près de disparaître. Plus tard, j'ai réalisé qu'il y avait une faute d'orthographe. lol 😀 - Désolé pour le temps perdu à Maverick 🙂 Malheureusement, le commentaire est trop vieux pour moi de modifier, sinon je serais corrigé ma faute de frappe :/
- Avant aveuglément la définition de ces valeurs vrai/faux, vous devriez consulter le pilote que vous utilisez pour voir comment ils gèrent les paramètres. Pour les gens à l'aide connectez-mongo, voir ici github.com/kcbanner/connect-mongo#lazy-session-update
Vous devez vous connecter pour publier un commentaire.
Que les avertissements dire, les valeurs par défaut de changement donc, ils veulent s'assurer qu'en définissant les valeurs explicitement maintenant, vous ne rencontrerez pas un comportement inattendu lorsque les valeurs par défaut de la faire changer (dans un avenir proche).
J'ai trouvé question utile:
https://github.com/expressjs/session/issues/56
false
( github.com/expressjs/session#resave, github.com/expressjs/session#saveuninitialized ).Je n'ai pas assez de rep ajouter comme commentaire. J'ai ajouté pour ma valeur par défaut de Ben la réponse.