Express Web 框架 (Node.js/JavaScript)

Express 是一款流行的无约束 Web 框架,用 JavaScript 编写,并在 Node.js 运行时环境中运行。本模块解释了该框架的一些主要优势,如何设置您的开发环境以及如何执行常见的 Web 开发和部署任务。

先决条件

在开始学习本模块之前,您需要了解什么是服务器端网页编程和网页框架,理想情况下,可以阅读我们 服务器端网站编程入门 模块中的主题。强烈建议您具备编程概念和 JavaScript 的基本知识,但不是理解核心概念的必要条件。

注意: 本网站提供了许多有用的资源,可以帮助您在客户端开发的背景下学习 JavaScript:JavaScriptJavaScript 指南JavaScript 基础JavaScript(学习)。核心 JavaScript 语言和概念在 Node.js 上的服务器端开发中是一样的,这些资料将是有帮助的。Node.js 提供了 额外的 API 来支持在无浏览器环境中(例如,创建 HTTP 服务器和访问文件系统)有用的功能,但它不支持与浏览器和 DOM 交互的 JavaScript API。

本指南将提供一些关于使用 Node.js 和 Express 的信息,互联网和书籍中还有许多其他优秀的资源——其中一些资源链接自 如何开始使用 Node.js(StackOverflow)和 学习 Node.js 的最佳资源是什么?(Quora)。

指南

Express/Node 简介

在第一篇 Express 文章中,我们将回答“什么是 Node?”和“什么是 Express?”的问题,并为您概述 Express 网页框架的特殊之处。我们将概述主要功能,并向您展示 Express 应用程序的一些主要构建块(尽管此时您还没有一个可以测试它的开发环境)。

设置 Node (Express) 开发环境

既然您已经了解了 Express 的用途,我们将向您展示如何在 Windows、Linux(Ubuntu)和 macOS 上设置和测试 Node/Express 开发环境。无论您使用的是哪种常见的操作系统,本文都应该提供您开始开发 Express 应用程序所需的知识。

Express 教程:本地图书馆网站

我们实用的教程系列的第一篇文章解释了您将学到的内容,并概述了我们在后续文章中将要使用和演化的“本地图书馆”示例网站。

Express 教程第 2 部分:创建网站框架

本文介绍了如何创建一个“骨架”网站项目,然后您可以用站点特定的路由、模板/视图和数据库填充它。

Express 教程第 3 部分:使用数据库 (使用 Mongoose)

本文简要介绍了 Node/Express 的数据库。然后继续介绍如何使用 MongooseLocalLibrary 网站提供数据库访问。它解释了如何声明对象模式和模型、主要字段类型以及基本验证。它还简要介绍了一些访问模型数据的主要方法。

Express 教程第 4 部分:路由和控制器

在本教程中,我们将为LocalLibrary 网站中最终需要的每个资源端点设置路由(URL 处理代码)以及“虚拟”处理函数。完成之后,我们将拥有路由处理代码的模块化结构,可以在后续文章中使用真实的处理函数对其进行扩展。我们还将对如何使用 Express 创建模块化路由有更深入的了解。

Express 教程第 5 部分:显示图书馆数据

现在我们已经准备好添加显示LocalLibrary 网站书籍和其他数据的页面。这些页面将包括一个主页,显示我们拥有每种模型类型的记录数量,以及所有模型的列表页面和详细信息页面。在此过程中,我们将获得实际经验,从数据库中获取记录并使用模板。

Express 教程第 6 部分:使用表单

在本教程中,我们将向您展示如何在 Express 中使用 Pug 与 HTML 表单 交互,特别是如何编写表单来创建、更新和删除数据库中的文档。

Express 教程第 7 部分:部署到生产环境

现在您已经创建了一个很棒的LocalLibrary 网站,您需要将其安装在公共 Web 服务器上,以便图书馆工作人员和成员可以通过互联网访问它。本文概述了如何找到主机来部署您的网站,以及您需要做些什么才能使您的网站准备好投入生产。

添加更多教程

上面列出了所有现有的教程,但如果您想扩展本模块,以下是一些其他有趣的主题:

  • 使用会话。
  • 用户身份验证。
  • 用户授权和权限。
  • 测试 Express 网页应用程序。
  • Express 网页应用程序的 Web 安全。

模块评估也是一个非常棒的补充!