推荐答案
Express 中内置的中间件包括:
- express.static:用于提供静态文件服务。
- express.json:用于解析 JSON 格式的请求体。
- express.urlencoded:用于解析 URL-encoded 格式的请求体。
本题详细解读
express.static
express.static 是 Express 框架中用于提供静态文件服务的中间件。它可以将指定目录下的文件直接提供给客户端,通常用于托管图片、CSS、JavaScript 等静态资源。
app.use(express.static('public'));上述代码会将 public 目录下的文件作为静态资源提供给客户端。
express.json
express.json 是 Express 框架中用于解析 JSON 格式请求体的中间件。它会将请求体中的 JSON 数据解析为 JavaScript 对象,并将其挂载到 req.body 上。
app.use(express.json());
使用该中间件后,客户端发送的 JSON 数据会被自动解析为 req.body。
express.urlencoded
express.urlencoded 是 Express 框架中用于解析 URL-encoded 格式请求体的中间件。它会将请求体中的 URL-encoded 数据解析为 JavaScript 对象,并将其挂载到 req.body 上。
app.use(express.urlencoded({ extended: true }));extended: true 表示使用 qs 库来解析 URL-encoded 数据,支持嵌套对象。如果设置为 false,则使用 querystring 库,不支持嵌套对象。