var express = require('express'), app = express(), https = require('https'), fs = require('fs'), keys = require( "keygrip" )(['secret1', 'secret2']), cookies = require( "cookies" ); // This line is from the Node.js HTTPS documentation var options = { key: fs.readFileSync('private_key_cert.pem'), cert: fs.readFileSync('public_cert.pem') }; app.use(cookies.express(keys)); app.get('/', function(req, res){ if (req.cookies.remember) { res.send('Remembered :). Click to forget!.'); } else { res.send('
'); } }); app.get('/forget', function(req, res){ res.clearCookie('remember'); res.redirect('back'); }); app.post('/', function(req, res){ var minute = 60 * 1000; if (req.body.remember) res.cookie('remember', 1, { maxAge: minute }); res.redirect('back'); }); // Create an HTTPS service https.createServer(options, app).listen(443); console.log('Express started on port %d', 443);