使用中间件
Express 是一个路由和中间件web框架,它本身具备较少的功能。从本质上来说,一个Express应用程序是一系列中间件函数的调用。
Middleware
函数是可以访问 request object ,response object 以及应用程序请求 - 响应周期中 next
中间件函数的函数。下一个中间件函数通常都会以名为 next
的变量指定。
中间件函数可以做以下工作:
- 执行任意代码
- 改变
request
和response
对象 - 终止
request-response
周期 - 调用栈中的下一个中间件函数
如果当前的中间件函数没有终止 request-response
周期,那么它必须调用 next()
来把控制权交个栈中的下一个中间件函数,否则的话,当前的这个请求就会被挂起。
Express 应用程序可以使用的中间件类型如下:
- 应用程序级中间件
- 路由级中间件
- 错误处理中间件
- 内嵌中间件
- 第三方中间件
应用程序级中间件
使用 app.use
和 app.METHOD()
函数,可以将应用程序级中间件绑定到 app object
实例上。METHOD
是中间件函数可以处理的 HTTP 请求方法(例如GET,PUT或者POST),使用时注意这些方法名都要小写。