Skip to content

Instantly share code, notes, and snippets.

@bingomanatee
Created April 24, 2012 14:36
Show Gist options
  • Save bingomanatee/2480149 to your computer and use it in GitHub Desktop.
Save bingomanatee/2480149 to your computer and use it in GitHub Desktop.
Trying to get the session example to work in Express 3.0 alpha
/**
* Module dependencies.
*/
var express = require('express');
var app = express.createServer(
express.logger()
);
app.use(
express.cookieParser({ secret: 'keyboard cat' }));
app.use(
express.session({ secret: 'keyboard cat' }));
app.get('/', function(req, res){
var body = '';
if (req.session.hasOwnProperty('views')) {
++req.session.views;
} else {
req.session.views = 1;
body += '<p>First time visiting? view this page in several browsers :)</p>';
}
res.send(body + '<p>viewed <strong>' + req.session.views + '</strong> times.</p>');
});
app.listen(3000);
console.log('Express app started on port 3000');
@bingomanatee
Copy link
Author

This is essentially the same as the session example in the express.js github project. You have to add the cookie and session components, and if you don't add the cookie's secret it complains.

Even after you do that, this happens:

/usr/local/bin/node /Users/dedelhart/OS/test_express_3/app.js
Express app started on port 3000

node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
TypeError: Not a string or buffer
at Object.createHmac (crypto.js:129:21)
at Object.sign (/Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/utils.js:136:6)
at Object.serialize (/Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/middleware/session/cookie.js:115:17)
at ServerResponse. (/Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/middleware/session.js:242:24)
at ServerResponse.emit (events.js:64:17)
at ServerResponse.writeHead (/Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/patch.js:73:36)
at ServerResponse._implicitHeader (http.js:808:8)
at ServerResponse.end (http.js:645:10)
at /Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/middleware/session.js:256:13
at Array.0 (/Users/dedelhart/OS/test_express_3/node_modules/express/node_modules/connect/lib/middleware/session/memory.js:75:11)

Process finished with exit code 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment