sql >> Databasteknik >  >> NoSQL >> Redis

Expire time express och redis session

Det här är min konfiguration för sessioner och den fungerar.
Jag ställer in utgångstiden till 5 sekunder för teständamål.

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}
}));

Jag ställer in maxAge och det fungerade inte och när jag ställde in ttl det fungerade.

Obs! Jag testade och fick reda på att ttl är i andra men maxAge är i millisekunder! (lite konstigt)

du kan logga sessionsdata med hjälp av en mellanprogram som nedan för att se om ett passobjekt finns eller inte, om det inte finns något passobjekt i sessionsdata loggas användaren ut.

app.use((req, res, next) => {
    console.log('session:\n', req.session);
    next();
});


  1. Använder StackExchange.Redis-klient med Redis-kluster

  2. Fråga Mongodb om månad, dag, år... för ett datum och tid

  3. Finns det något sätt att få en specifik nyckel att lokalisera på en specifik redis-instans i klusterläge?

  4. Mongodb fynds returnerande dokumentbeställning