Express Middleware
Express Middleware
Phần tiêu đề “Express Middleware”Middleware là functions xử lý requests trong pipeline.
Built-in Middleware
Phần tiêu đề “Built-in Middleware”import express from "express";
const app = express();
app.use(express.json()); // Parse JSONapp.use(express.urlencoded({ extended: true })); // Parse form dataapp.use(express.static("public")); // Serve static filesCustom Middleware
Phần tiêu đề “Custom Middleware”// Logger middlewarefunction logger(req, res, next) { console.log(`${req.method} ${req.url}`); next();}
app.use(logger);Authentication Middleware
Phần tiêu đề “Authentication Middleware”function authMiddleware(req, res, next) { const token = req.headers.authorization?.split(" ")[1];
if (!token) { return res.status(401).json({ error: "No token provided" }); }
try { const decoded = jwt.verify(token, process.env.JWT_SECRET); req.user = decoded; next(); } catch (error) { res.status(401).json({ error: "Invalid token" }); }}
// Protected routeapp.get("/profile", authMiddleware, (req, res) => { res.json({ user: req.user });});Error Handler
Phần tiêu đề “Error Handler”function errorHandler(err, req, res, next) { console.error(err);
if (err.name === "ValidationError") { return res.status(400).json({ error: err.message }); }
res.status(500).json({ error: "Internal server error" });}
app.use(errorHandler);