Dit is mijn configuratie voor sessies en het werkt.
Ik heb de vervaltijd ingesteld op 5 seconden voor testdoeleinden.
app.use(session({
store: new redisStore({
host: 'localhost',
port: 6379,
client: redisClient,
ttl: 5 // in seconds
}),
secret: 'this is secret',
resave: false,
saveUninitialized: true,
// cookie: {maxAge: 5000}
}));
Ik heb maxAge
ingesteld en het werkte niet en toen ik ttl
. instelde het werkte.
Opmerking: Ik heb getest en ontdekte dat ttl
staat op de tweede plaats, maar maxAge is in milliseconden! (beetje raar)
u kunt sessiegegevens loggen met behulp van een middleware zoals hieronder om te zien of een paspoortobject bestaat of niet. Als er geen paspoortobject in de sessiegegevens is, is de gebruiker uitgelogd.
app.use((req, res, next) => {
console.log('session:\n', req.session);
next();
});