Express 中间件
Node.js 教程
收录了这篇文章

Express 是一个基于 Node.js 的 web 应用框架,它简化了 web 应用的开发过程。中间件是 Express 应用程序的核心特性,它们是请求处理链中的函数,可以执行各种任务,如响应处理、路由、错误处理等。下面是一个关于如何在 Express 中使用中间件的简明教程。

1. 安装 Express

首先,确保你已经安装了 Node.js。然后,在命令行中创建一个新的项目目录,并初始化 npm:

Bash
mkdir myapp
cd myapp
npm init -y

接着,安装 Express:

Bash
npm install express

2. 创建基本的 Express 应用

在项目目录中创建一个名为 app.js 的文件,并写入以下基础代码来启动一个 Express 服务器:

const express = require('express');
const app = express();
const port = 3000;

app.listen(port, () => {
  console.log(`Example app listening at http://localhost:${port}`);
});

3. 理解和使用中间件

基本中间件示例

中间件函数具有以下签名:(req, res, next) => {},其中 req 是请求对象,res 是响应对象,next 是一个回调函数,调用它会将控制权传递给下一个中间件。

添加一个简单的日志记录中间件:

app.use((req, res, next) => {
  console.log(`${new Date().toISOString()} - ${req.method} ${req.path}`);
  next(); // 确保控制权传递给下一个中间件或路由处理器
});

错误处理中间件

错误处理中间件有四个参数,形如 (err, req, res, next)。它们用于捕获并处理在其他中间件或路由处理器中抛出的错误。

app.use((err, req, res, next) => {
  console.error(err.stack);
  res.status(500).send('Something broke!');
});

第三方中间件

Express 社区提供了许多有用的第三方中间件,如 body-parser(用于解析请求体)和 cors(用于跨域资源共享)。安装并使用 body-parser 示例:

Bash
npm install body-parser

在 app.js 中使用它:

const bodyParser = require('body-parser');

app.use(bodyParser.json()); // 解析 JSON 格式的请求体
app.use(bodyParser.urlencoded({ extended: true })); // 解析 URL 编码的数据

4. 路由中间件

路由中间件与特定的HTTP方法和URL路径关联。例如:

app.get('/', (req, res) => {
  res.send('Hello World!');
});

app.post('/api/data', (req, res) => {
  res.json(req.body); // 假设我们使用了body-parser来解析请求体
});

5. 启动应用

确保你的 app.js 文件包含以上所有或部分代码,然后在命令行中运行:

Bash
node app.js

现在,你的 Express 应用应该已经在本地的 http://localhost:3000 上运行了,你可以开始测试你的中间件和路由功能。

通过这个教程,你应该对 Express 中间件有了基本的了解。随着实践的深入,你可以探索更多高级用法,如中间件的排列顺序、路由前缀、重用中间件等。

修改时间 2024-05-29

声明:本站所有文章和图片,如无特殊说明,均为原创发布。商业转载请联系作者获得授权,非商业转载请注明出处。
随机推荐
Node.js path 模块
JavaScript 事件
JavaScript ES6 模块
Content Security Policy(CSP)简介
WordPress 添加文章自定义字段
Express 使用 cookie-session 处理 session
WordPress 分页
Linux apt 命令