Node.js 教程:构建一个基本的 Express 应用程序

阅读时长 4 分钟读完

简介

Node.js 是一种基于 Chrome V8 引擎的 JavaScript 运行时,它可以让 JavaScript 运行在服务器端。Express 是 Node.js 应用程序的最流行的开发框架,它提供了一系列强大的功能和工具,可以帮助我们快速地构建 Web 应用程序。

本教程将介绍如何使用 Node.js 和 Express 构建一个基本的 Web 应用程序。我们将使用 Express 来创建一个简单的服务器,并编写一些路由和控制器来处理 HTTP 请求和响应。最后,我们将使用模板引擎来渲染视图并向客户端发送响应。

准备工作

在开始之前,你需要安装 Node.js 和 Express。你可以从官方网站下载并安装 Node.js,然后使用以下命令安装 Express:

创建一个 Express 应用程序

首先,我们需要创建一个新的 Express 应用程序。打开终端并进入项目的根目录,然后运行以下命令:

这将创建一个名为 myapp 的新的 Express 应用程序。然后,进入 myapp 目录并安装依赖项:

现在,我们已经准备好了一个基本的 Express 应用程序。

编写路由和控制器

接下来,我们需要编写一些路由和控制器来处理 HTTP 请求和响应。在 Express 中,路由是指确定如何响应客户端请求的方式,而控制器是指实际处理请求的代码。我们将创建两个路由:一个用于处理主页请求,另一个用于处理关于页面请求。

首先,打开 routes/index.js 文件,然后添加以下代码:

-- -------------------- ---- -------
--- ------- - -------------------
--- ------ - -----------------

-- --- ---- ----- --
--------------- ------------- ---- ----- -
  ------------------- - ------ --------- ---
---

-- --- ----- ----- --
-------------------- ------------- ---- ----- -
  ------------------- - ------ ------- ---
---

-------------- - -------

这段代码会创建两个路由,一个用于处理主页请求,另一个用于处理关于页面请求。在这些路由中,我们使用 res.render() 方法来渲染视图并向客户端发送响应。res.render() 方法将使用我们在下一步中创建的模板引擎来渲染视图。

接下来,我们需要创建控制器来处理这些路由。打开 app.js 文件,然后添加以下代码:

这段代码会将 indexRouter 控制器与根路径 / 关联起来。现在,我们已经准备好了路由和控制器。

使用模板引擎渲染视图

最后,我们需要使用模板引擎来渲染视图并向客户端发送响应。在本教程中,我们将使用 EJS 模板引擎。你可以使用以下命令安装它:

接下来,打开 app.js 文件,然后添加以下代码:

这段代码会设置模板引擎的视图目录和文件扩展名。现在,我们已经准备好使用模板引擎渲染视图了。

打开 views/index.ejs 文件,然后添加以下代码:

-- -------------------- ---- -------
--------- -----
------
  ------
    ---------- ----- ----------
  -------
  ------
    ------- ----- -------
    ---------- -- --- ----- ------
  -------
-------

这段代码会创建一个简单的 HTML 页面,其中包含一个标题和一个欢迎消息。我们使用了 EJS 的模板语法来插入变量和动态内容。

现在,我们已经准备好了使用模板引擎渲染视图并向客户端发送响应。运行以下命令启动应用程序:

然后,在浏览器中访问 http://localhost:3000,你应该能够看到一个简单的欢迎页面。访问 http://localhost:3000/about,你应该能够看到一个关于页面。

结论

在本教程中,我们介绍了如何使用 Node.js 和 Express 构建一个基本的 Web 应用程序。我们学习了如何编写路由和控制器来处理 HTTP 请求和响应,以及如何使用模板引擎来渲染视图并向客户端发送响应。希望这个教程能够帮助你更好地理解 Node.js 和 Express,以及如何构建 Web 应用程序。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6765facd76af2b9a20f1b00e

纠错
反馈