Build HTTP APIs with routing, middleware, validation, controllers, and error handling.
Lessons
Use middleware for logging, parsing, authentication, and shared request logic.
Middleware & Request Flow is easiest to learn by reading the example, changing it, and observing the result.
import express from 'express';
const app = express();
// Custom middleware runs on every request
function requestTimer(req, res, next) {
const start = Date.now();
res.on('finish', () => {
console.log(`${req.method} ${req.url} - ${Date.now() - start}ms`);
});
next(); // pass control to the next handler
}
app.use(requestTimer);
app.get('/api/lessons', (req, res) => res.json({ lessons: [] }));
app.listen(3000);Practice the Middleware & Request Flow example in a small scratch file, then explain what changed and why.