En fonction d'une condition, je dois détruire la session en cours de l'utilisateur et le rediriger vers une page de connexion avec un message. J'utilise flash
pour avoir un message show-once-only. Partout, cela fonctionne très bien sur mon application sauf ici, car ici j'utilise req.flash
après req.session.destroy()
.req.flash() ne fonctionne pas après req.session.destroy()
Comment puis-je y parvenir? J'ai essayé de placer req.flash()
avant req.session.destroy()
mais cela ne fonctionne pas, je pense que req.session.destroy()
efface la session où nous avons juste stocké le message instantané. Merci.
if(req.session.adminUser.blocked){
req.logout();
req.session.destroy(()=>{
req.flash("flashMessage", "You are blocked, Please contact admin");
req.session.save(function(){
res.redirect("/admin-panel/login");
return false;
});//session.save()
});
}
Avec ce code, j'obtiens cette erreur - Error: req.flash() requires sessions
. Si je déplace l'instruction flash avant l'instruction session.destroy
, aucune erreur ne se produit, mais le message n'apparaît pas.
Merci beaucoup. Vos deux alternatives me semblent plutôt bien. :) –