Node.js Express中间件理解及中间件分类和作用
更新时间:2026年04月28日 09:00:24 作者:前端小超人rui
文章主要介绍了Express中间件的概念和使用,包括中间件的核心作用、标准形式、分类、定义以及内置中间件和第三方中间件的例子,以及它们的价值,总的来说,文章详细介绍了Express中间件的相关知识和应用
中间件:拦截HTTP请求的函数
一 核心作用
- 请求到达路由前执行操作(如解析、校验)
- 响应发送前执行操作(如日志、处理)
- 中间件的标准形式:
function middleware(req,res,next){
//处理逻辑(解析/校验等)
next() ;//传递控制权给下一个中间件/路由
}
- Express应用本质是中间件链组合,每个请求从头到尾以此处理
二 中间件分类
- 应用程序级中间件
- 通过app.use()挂载,作用于全局或路径
- 用于统一处理解析、日志、安全等全局逻辑
app.use(express.json()) // 解析JSON 请求体
//全局日志记录
app.use((req,res,next)=>{
console.log(`[${Date.now()}]${req.method}${req.url}`)
next()
})
- 路由级中间件
- 挂载在express.Router()实例上,仅作用当前路由模块
- 用于模块化组织业务逻辑
const router =express.Router()
router.use((req,res,next)=>{
console.log('进入用户模块')
next()
})
app.use('/users',router)
- 错误处理中间件
- 定义:捕获并处理错误,必须接收四个参数(err,req,res,next)
- 统一返回错误响应,提升系统健壮性
//错误中间件
app.use(()=>{
res.send({
status:1,
msg:err instanceof Error?err.message:err,
})
})
- 内置中间件
- 定义:Express原生提供,无需额外安装
- 例子
- express.static(‘public’):托管静态资源
- express.json():解析JSON 请求体
- express.urlencoded();解析请求体数据
- 第三方中间件
- 社区开发,npm 安装扩展功能
- 例子
- 数据验证:express-validator
- 文件上传:multer
- 解决跨域问题:cors
- 价值;副高高频需求、成熟可靠
到此这篇关于Node.js Express中间件理解及中间件分类和作用的文章就介绍到这了,更多相关Node.js Express中间件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Node.js中使用mongoose操作mongodb数据库的方法
如何利用mongoose将数据写入mongodb数据库呢?操作方法很简单,下面小编给大家分享Node.js中使用mongoose操作mongodb数据库的方法,感兴趣的朋友一起看看吧2017-09-09
nodejs连接mysql数据库简单封装示例-mysql模块
本篇文章主要介绍了nodejs连接mysql数据库简单封装(mysql模块),具有一定的参考价值,感兴趣的小伙伴们可以参考一下。2017-04-04


最新评论