📅  最后修改于: 2023-12-03 14:39:18.523000             🧑  作者: Mango
在Express中,app.use()是一个非常重要的方法。它允许我们将中间件添加到应用程序中,以处理HTTP请求。
app.use([path,] callback [, callback...])
该方法接受两个或多个参数:
中间件可以是一个函数或一个数组。
以下示例将添加一个中间件,用于在应用程序的根路径下处理HTTP请求:
app.use('/', (req, res) => {
res.send('Hello World!')
})
以下示例将添加一个中间件数组,用于在'/users'路径下处理HTTP请求:
const usersMiddleware = [
(req, res, next) => {
console.log('Processing request')
next()
},
(req, res) => {
res.send('List of users')
}
]
app.use('/users', usersMiddleware)
在调用app.use()方法时,只要按照顺序将中间件添加到应用程序中,它们就会按照添加顺序依次被调用。
例如,如果我们在应用程序中添加了两个中间件,如下所示:
app.use((req, res, next) => {
console.log('Middleware 1')
next()
})
app.use((req, res) => {
console.log('Middleware 2')
res.send('Hello World!')
})
当我们向应用程序发出HTTP请求时,先执行第一个中间件,输出'Middleware 1'。然后执行第二个中间件,输出'Middleware 2'并发送响应。
app.use()方法在以下场景中非常有用:
app.use()方法是Express框架中添加中间件的主要方法。它可以将处理HTTP请求的回调函数和路径映射关联起来,使我们可以对请求进行处理和授权,从而更好地构建Web应用程序。