Build HTTP APIs with routing, middleware, validation, controllers, and error handling.
Lessons
Authenticate users with server-side sessions and cookies.
Session-Based Authentication is easiest to learn by reading the example, changing it, and observing the result.
// npm install express-session
import express from 'express';
import session from 'express-session';
const app = express();
app.use(session({
secret: process.env.SESSION_SECRET,
resave: false,
saveUninitialized: false,
cookie: { httpOnly: true, secure: true, maxAge: 3_600_000 }
}));
app.post('/login', (req, res) => {
req.session.userId = 42;
res.json({ loggedIn: true });
});
app.listen(3000);Practice the Session-Based Authentication example in a small scratch file, then explain what changed and why.