Course Node.js Backend Development

Middleware

Express & APIs Preview

Middleware

Middleware is a function that runs between the request arriving and your route handler, optionally passing control on with next().

function logger(req, res, next) {\n  console.log(`${req.method} ${req.url}`);\n  next();\n}\n\napp.use(logger);          // every request\napp.use("/api", logger);  // only /api requests

The chain

request → logger → auth → route handler → response\n                  ↑\n            next() moves on

Auth middleware

function requireAuth(req, res, next) {\n  const token = req.headers.authorization?.replace("Bearer ", "");\n  const user = verifyToken(token);\n  if (!user) return res.status(401).json({ error: "Unauthorized" });\n  req.user = user;    // attach for the handler\n  next();\n}\n\napp.get("/profile", requireAuth, (req, res) => {\n  res.json({ user: req.user });\n});

Error-handling middleware

function errorHandler(err, req, res, next) {\n  console.error(err);\n  res.status(500).json({ error: "Internal error" });\n}\napp.use(errorHandler);   // must be registered last

Built-in & third-party

app.use(express.json());            // body parser\napp.use(cors());                    // cross-origin\napp.use(express.static("public"));  // serve files
Tip: Order matters: middleware runs in registration order. Error handlers go last, with a 4-argument signature.

This is a free preview lesson

Enroll in the Node.js Backend Development to unlock every lesson, lesson PDF guides, quizzes and your certificate - and start creating your own pieces today.


Discussion

Free preview lesson