socket.io-session-middleware

    0.1.0 • Public • Published

    socket.io-session-middleware

    Share connect/express sessions with socket.io 1.x

    Setup

    npm status

    Dependency Status

    Example

    Server

    var socketSession = require("socket.io-session-middleware");
        
    var session = {
        store: new connect.session.MemoryStore(),
        secret: "secret",
        key: "mykey.sid",
        cookieParser: connect.cookieParser("secret")
    };
     
    io.use(socketSession(session));
     
    io.on("connection", function(socket){
     
        socket.on("whoAreYou", function(callback){
            
            //read from session
            callback(socket.session.name);
        });
        
        socket.on("setName", function(data) {
            
            //write to session
            socket.session.name = data.name;
        })
    });
     

    Client

     
    socket.emit("setName", { name: "hans" });
     
    socket.emit("whoAreYou", function(name) { 
        console.log("I am " + name); 
    });
     
     
    //=> I am hans 

    A full featured example can be found in the example folder.

    Notes

    Make sure to fire a http request to initialize the session/cookie before accessing the session with socket.io. If you are serving the socket.io client with your node.js server this won't be a problem for you.

    Install

    npm i socket.io-session-middleware

    DownloadsWeekly Downloads

    2

    Version

    0.1.0

    License

    MIT

    Last publish

    Collaborators

    • hpohlmeyer
    • thois
    • jhnns
    • meaku
    • peeri
    • matthaias
    • leomelzer
    • antosan
    • moritzjacobs