1、express 中的中间件
(1)、当客户端的请求到达 express 服务器后,会连续调用多个中间件,对请求进行预处理
(2)、本质是一个 function 处理函数(与普通路由函数相比,形参中多了 next 参数;函数中的 next() 用于将流转关系转交给下一个中间件或者路由)
2、全局生效的中间件
(1)、客户端发出的任何请求,到达服务器后,都会触发的中间件
(2)、
3、局部生效的中间件
(1)、不使用 app.use() 定义的中间件即为局部中间件
(2)、
4、中间件的注意事项
(1)、在路由之前注册中间件
(2)、不要忘记调用 next() 函数
(3)、next() 后最好不要写其他代码
(4)、多个中间件间共享 req 和 res
5、中间件的分类
(1)、应用级别中间件:绑定到 app 实例的中间件
(2)、路由级别中间件:绑定到 express.Router() 上的中间件
(3)、错误级别中间件:捕获项目中的异常错误,注意该中间件要放到路由之后
(4)、express 内置的中间件:如 express.static(托管静态资源)、express.json(解析 JSON 格式的请求体数据)、express.urlencoded(解析 URL-encoded 格式的请求体数据)
(5)、第三方的中间件