返回

了解Express的基础:步入服务器端开发的第一步

前端


Express 是一个轻量级的 Node.js 框架,用于构建 Web 应用程序和 API。Express 提供了许多特性和工具来简化 Web 开发过程,例如:

  • 路由
  • 中间件
  • 模板引擎
  • 错误处理

Express 也是一个非常灵活的框架,可以轻松地集成其他第三方库和框架。


在本文中,我们将介绍 Express 的基础知识,包括:

  • 创建一个 Express 应用程序
  • 使用 Express 路由
  • 使用 Express 中间件
  • 使用 Express 模板引擎
  • 处理 Express 错误

我们还将提供一些示例代码来演示如何使用 Express 构建一个简单的 Web 应用程序。

创建一个 Express 应用程序

要创建一个 Express 应用程序,只需在您的项目目录中运行以下命令:

npm install express

这将安装 Express 并在您的 node_modules 目录中创建一个 express 目录。

接下来,创建一个新的 JavaScript 文件,例如 app.js,并添加以下代码:

const express = require('express');

const app = express();

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

app.listen(3000, () => {
  console.log('Example app listening on port 3000!');
});

这段代码创建了一个简单的 Express 应用程序,它将在端口 3000 上侦听传入的请求。当您访问 http://localhost:3000 时,应用程序将响应一条“Hello, World!”消息。

使用 Express 路由

路由是 Express 用于将传入的请求映射到特定处理程序的机制。处理程序可以是一个函数、一个中间件或另一个路由。

要使用路由,首先需要创建一个路由对象。您可以使用 express.Router() 函数来创建路由对象。例如:

const router = express.Router();

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

接下来,您可以将路由对象传递给 app.use() 函数来注册路由。例如:

app.use('/hello', router);

这将注册一个新的路由,当您访问 http://localhost:3000/hello 时,应用程序将响应一条“Hello, World!”消息。

使用 Express 中间件

中间件是 Express 用于在请求处理过程中执行特定操作的函数。中间件可以用于各种目的,例如:

  • 解析请求体
  • 验证请求
  • 记录请求
  • 处理错误

要使用中间件,首先需要创建一个中间件函数。中间件函数是一个接受三个参数的函数:

  • req:传入的请求对象
  • res:传出的响应对象
  • next():一个函数,用于将控制权传递给下一个中间件或处理程序

例如:

const middleware = (req, res, next) => {
  console.log('Request received!');
  next();
};

接下来,您可以将中间件函数传递给 app.use() 函数来注册中间件。例如:

app.use(middleware);

这将注册一个新的中间件,它将在每个请求处理之前执行。

使用 Express 模板引擎

模板引擎是 Express 用于生成动态 HTML 页面或其他类型的文本输出的工具。Express 支持多种模板引擎,例如:

  • EJS
  • Pug
  • Handlebars

要使用模板引擎,首先需要安装相应的模板引擎包。例如,要安装 EJS,您可以运行以下命令:

npm install ejs

接下来,您可以将模板引擎配置为 Express 应用程序。例如,要配置 EJS,您可以使用以下代码:

app.set('view engine', 'ejs');

这将告诉 Express 使用 EJS 作为模板引擎。

接下来,您可以创建一个新的 EJS 模板文件,例如 views/index.ejs,并添加以下代码:

<h1>Hello, World!</h1>

最后,您可以创建一个路由,使用 res.render() 函数来渲染模板。例如:

app.get('/', (req, res) => {
  res.render('index');
});

这将创建一个新的路由,当您访问 http://localhost:3000 时,应用程序将渲染 views/index.ejs 模板。

处理 Express 错误

Express 提供了一个内置的错误处理机制。您可以使用 app.use() 函数来注册错误处理中间件。错误处理中间件是一个接受四个参数的函数:

  • err:错误对象
  • req:传入的请求对象
  • res:传出的响应对象
  • next():一个函数,用于将控制权传递给下一个中间件或处理程序

例如:

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

这将注册一个新的错误处理中间件,它将在每个请求处理过程中执行。当发生错误时,错误处理中间件将记录错误堆栈并向客户端发送一条“Something broke!”消息。

总结

在本文中,我们介绍了 Express 的基础知识,包括如何创建 Express 应用程序、如何使用 Express 路由、如何使用 Express 中间件、如何使用 Express 模板引擎以及如何处理 Express 错误。我们还提供了一些示例代码来演示如何使用 Express 构建一个简单的 Web 应用程序。