一/ 什么是中间件?
一个对用户请求进行过滤和预处理的东西,相当于一个过滤器,也可以理解为中间件是一个函数,它可以访问请求对象(req),响应对象(res),以及用用程序的请求/响应循环中的下一个中间件函数,而下一个中间件函数通常由名为next的变量来表示.
二/ 中间件的好处?
避免重复操作以及数据处理和异常处理,减少代码量,使逻辑更加清晰,提高效率和代码扩展性
三/ 中间件的功能
- 执行任何代码
- 修改请求和响应对象
- 终结请求-响应循环
- 调用堆栈中的下一中间件
四/ 中间件的分类
应用级中间件: 绑定到app对象和app.use()和app.method(),method是http请求的方法
路由器中间件: 绑定的对象为express.router()
错误处理中间件: 需要使用4个参数(err,req,res,next)
内置中间件: express.static(root,[option])它是express唯一的内置中间件,基于serve-static,负责express应用中提供托管静态资源,参数root是提供静态资源的根目录.
第三方中间件: 通过npm安装的第三方中间件
五/ 代码的注释