Express 4 Sessions not persisting when restarting server
express, node.js, session, session-cookies
Solution
The default session store for express-session is MemoryStore, which as the name suggests, stores sessions in memory only. If you need persistence, there are many session stores available for Express. Some examples:
- Cookie store
- Redis store
- MongoDB store
- CouchDB store
- Riak store
- memcached store
- leveldb store
- MySQL store
- PostgreSQL store
- Firebase store
For a updated and more complete list visit Compatible Session Stores.
Problem
I have an Express 4 app setup to have sessions. ``` // Sessions app.use(cookieParser()); app.use(session({ secret: "some-secret" })); // Signup app.post("/signup", function (req, res) { create_user(req.body.user, function (err, user_id) { req.session.user_id = user_id; res.redirect("/admin"); }); }); ``` When I submit the form, it saves the user_id to the req.session. However, when I restart the server, the session is gone. Why isn't it persisting? Am I missing some configuration?