微信小程序的app.use()

136 阅读1分钟

app.use() 是 Express 框架中的一个方法,用于在 Express 应用中使用中间件(middleware)。

Express 中间件是在请求到达路由处理之前,对请求和响应进行预处理的函数。app.use() 方法用于注册一个全局中间件,它作为每个请求到达服务器时都会被调用。

app.use() 的语法如下:


app.use(callback)

其中,callback 是一个函数,用于处理请求和响应。它可以是一个单独的函数,也可以是一个函数数组。

在 Express 中,中间件函数的签名为 (req, res, next),其中 req 表示请求对象,res 表示响应对象,next 是一个函数,用于将控制权传递给下一个中间件函数。

通常,app.use() 会在路由之前使用,用于处理一些公共操作,例如日志记录、身份验证、处理请求体等。

一个简单的例子如下:


const express = require('express');

const app = express();

// 全局中间件

app.use((req, res, next) => {

console.log('Global Middleware');

next(); // 传递控制权给下一个中间件

});

// 路由

app.get('/', (req, res) => {

res.send('Hello World!');

});

app.listen(3000, () => {

console.log('Server started at http://localhost:3000');

});

在上面的例子中,app.use() 注册了一个全局中间件,在每个请求到达服务器时都会打印 Global Middleware。然后通过路由处理 / 的请求,并发送 Hello World!

需要注意的是,app.use() 注册的中间件会按照代码中定义的顺序依次执行。如果在中间件函数中调用了 next(),则会将控制权传递给下一个中间件;如果没有调用 next(),则请求会被该中间件终止处理。