Express是一个路由和中间件Web框架,其自身的功能很少:Express应用程序本质上是一系列中间件函数调用。
中间件功能是可以访问请求对象 (req),响应对象(res)和应用程序的请求-响应周期中的下一个中间件功能的功能。下一个中间件功能通常由名为的变量表示next。
中间件功能可以执行以下任务:
- 执行任何代码。
- 更改请求和响应对象。
- 结束请求-响应周期。
- 调用堆栈中的下一个中间件函数。
如果当前的中间件功能没有结束请求-响应周期,则必须调用next()将控制权传递给下一个中间件功能。否则,该请求将被挂起。
- 应用层中间件
- 路由器级中间件
- 错误处理中间件
- 内置中间件
- 第三方中间件
您可以使用可选的安装路径加载应用程序级和路由器级中间件。您还可以将一系列中间件功能一起加载,这将在安装点创建中间件系统的子堆栈。
应用层中间件
使用和函数将应用程序级中间件绑定到app对象的实例,其中,中间件函数以小写形式处理请求的HTTP方法(其中GET,PUT或POST)。app.use()app.METHOD()METHOD
此示例显示了没有安装路径的中间件功能。每次应用收到请求时,都会执行该功能。
var app = express()
app.use(function (req