什么是中间件?

中间件(Middleware)是 Node.js 应用中用于处理请求和响应的函数。它们可以执行以下操作:

  • 修改请求或响应对象
  • 终止请求-响应周期
  • 调用下一个中间件

🎯 核心作用

  • 增强应用功能(如日志记录、身份验证)
  • 分离关注点(业务逻辑与公共功能解耦)
  • 提升开发效率

中间件的使用场景

🔹 身份验证:检查用户权限
🔹 日志记录:记录请求信息到文件或数据库
🔹 请求解析:处理 JSON 或 URL 编码数据
🔹 错误处理:捕获异常并返回友好提示
🔹 静态文件服务:提供 HTML、CSS、JS 等资源

Express 中间件示例

app.use((req, res, next) => {
  console.log(`请求路径: ${req.path}`); // 日志记录
  next(); // 传递控制到下一个中间件
});

自定义中间件步骤

  1. 定义函数:接收 reqresnext 参数
  2. 执行逻辑:处理请求或响应
  3. 调用 next():继续传递请求链

💡 提示:在 Express 中,中间件可以是函数、函数数组或使用 app.use() 注册的路由

常见中间件库

扩展阅读

如需深入了解 Node.js 模块系统,可参考:深入理解Node.js模块系统

中间件流程图

📌 注意:中间件的执行顺序直接影响功能效果,建议合理规划请求处理链!