Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including socket.io-express-session with all npm packages installed. Try it out:

var socketIoExpressSession = require("socket.io-express-session")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

socket.io-express-session v0.1.3

Use express-session as socket.io middleware.

socket.io-express-session

Use express-session as socket.io middleware.

Setup

All you have to do is adding a middleware like you would in your express app.

var ios = require('socket.io-express-session');
var session = ... configured express-session instance
...

io.use(ios(session));
...
io.on('connection', function(socket){
  console.log(socket.handshake.session);
});

EXAMPLE: An example app is available under the the example folder. Run the npm run example command to start it.

IMPORTANT: You must pass the same session configuration into express and socket app (the same store, same secret)!

IMPORTANT: Do not use the default MemoryStore session store. It is not designed for a production environment. If you do use the default store then you should pass the same session instance to express and socket app (data are saved in memory).

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free