Search code examples
node.jssession-cookiesexpress

Session-only cookie for Express.js


http://www.javascriptkit.com/javatutors/cookie.shtml

Session-only cookies, on the other hand, stores information in the browser memory, and is available for the duration of the browser session. In other words, the data stored inside a session cookie is available from the time of storage until the browser is closed. Moving from page to page during this time does not erase the data.

How can I achieve this using Express.js?


Solution

  • The following is what I wanted (sort of). When I close browser the information is gone.

    var express = require('express');
    var app = express.createServer();
    
    var MemoryStore = require('connect/middleware/session/memory');
    app.use(express.bodyDecoder());
    app.use(express.cookieDecoder());
    
    app.get('/remember', function(req, res) {
        res.cookie('rememberme', 'yes', { expires: new Date() - 1, httpOnly: true });
    });
    
    app.get('/', function(req, res){
        res.send('remember: ' + req.cookies.rememberme);
    });
    
    app.listen(4000, '127.0.0.1');