使用 Express.js 和 MongoDB 构建 Web 应用的完整教程

阅读时长 10 分钟读完

在现代 Web 应用开发中,使用 Express.js 和 MongoDB 构建 Web 应用已经成为了一种趋势。Express.js 是一个快速、轻量级、灵活且容易上手的 Node.js Web 框架,而 MongoDB 是一个开源、跨平台的文档型 NoSQL 数据库。

在本文中,我们将会介绍如何使用 Express.js 和 MongoDB 构建 Web 应用,并提供详细的代码和指导。我们将会涵盖以下主题:

  1. 安装和配置
  2. 路由和控制器
  3. 模板和视图
  4. 数据库和模型

安装和配置

在开始之前,我们需要安装和配置 Express.js 和 MongoDB。首先,确保你已经安装了 Node.js 和 MongoDB。

接下来,创建一个新的 Node.js 项目,并在项目目录中运行以下命令:

这将会安装 Express.js 和 MongoDB 包,并将它们添加到项目依赖项中。接下来,在你的项目根目录中创建一个名为 app.js 的文件,并添加以下代码:

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

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

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

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

该代码将会创建一个 Express.js 应用程序实例,并连接到你的 MongoDB 数据库。它还为应用程序设置了一个监听器,并使用 body-parser 中间件来解析请求正文。请确保在代码中替换数据库名称和端口号。

路由和控制器

在 Express.js 中,路由是指将 HTTP 请求发送到正确的控制器或函数的过程。控制器负责处理请求并确定响应,例如,将请求发送到正确的模板或返回 JSON 数据。

要添加路由,可以将以下代码添加到 app.js 中:

该代码会在根路径下创建一个 GET 路径(“/”),并返回 “Hello World!” 响应。接下来,我们将创建一个控制器来处理更多的路由。

创建一个名为 usersController.js 的文件,并添加以下代码:

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

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

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

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

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

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

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

该代码将创建一个 usersController 控制器和几个路由来处理不同的 HTTP 请求。 要将其添加到 app.js 中,请使用以下代码:

现在,可以访问 http://localhost:3000/users 来调用路由,并处理 HTTP 请求了。

模板和视图

在 Express.js 中,模板和视图是创建 Web 应用的重要组成部分。

首先,我们需要安装并配置 ejs 模板引擎:

然后,将以下代码添加到 app.js

该代码将会告诉 Express.js 将模板文件存储在 /views 目录中,并使用 ejs 模板引擎呈现它们。

/views 目录中创建名为 index.ejs 的文件,并添加以下代码:

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

现在,在控制器中添加以下代码:

这将会呈现 index.ejs 模板文件,并返回“Welcome to My App”响应。

数据库和模型

最后,我们需要将 MongoDB 集成到我们的应用程序中,并创建一个模型来管理数据。

app.js 中,添加以下代码来创建一个 users 集合:

然后,创建一个名为 user.js 的文件,并添加以下代码:

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

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

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

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

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

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

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

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

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

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

该代码定义了一个 User 类,并提供了一些方法来管理 MongoDB 中的 users 集合。

现在,在控制器中,可以使用以下代码来调用模型:

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

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

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

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

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

这将会调用 User 类中的方法,从 MongoDB 进行读取或写入,并回传相应的结果。

结论

至此,我们已经涵盖了使用 Express.js 和 MongoDB 构建 Web 应用的全过程。我们介绍了如何安装和配置 Express.js 和 MongoDB,如何使用路由和控制器处理 HTTP 请求,如何使用模板和视图渲染app主

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

纠错
反馈