ExpressJS 简介 [+6 学习资源]

已发表: 2023-01-04

ExpressJS 是一个极简且灵活的 Node.js Web 框架,它为移动和 Web 应用程序提供了一组功能。

这个开源网络框架由 TJ Holowaychuk 开发。 ExpressJS 由 Node.js 基金会维护。

为什么选择 ExpressJS?

ExpressJS 提供简单的 API 来帮助开发人员构建后端、Web 应用程序和网站。 因此,该 Web 框架可与 Python 的 Django 和 Ruby 的 Rails 相媲美。

快递

然而,与 Django 和 Rails 不同,它们有一种自以为是的构建 API/应用程序的方式,ExpressJS 非常灵活和可插入,因为它没有做事的“最佳方式”。

总而言之,这些就是你应该使用 ExpressJS 的原因;

  • 易于创建 API 和 Web 应用程序。
  • 它的 API 非常强大,使路由变得容易
  • 异步和单线程

ExpressJS的特点

#1。 MEAN 堆栈的一部分

JavaScript 仍然是最流行的编程语言之一,因为它具有可在全栈应用程序的前端和后端使用的框架。

一些 Javascript 开发人员使用 MEAN,即 MongoDB、Express、Node.js 的缩写形式。 js 和 AngularJS 来创建全栈应用程序。 一些开发人员更喜欢 Reactjs 并使用 MERN(MongoDB、Express、Node.js 和 Reactjs)堆栈。 在这两个选项中,Expressjs 保持不变。

#2。 灵活快速

您不必掌握大型框架的许多不同部分,因为 ExpressJS 被设计为极简主义。 出色的路由系统、开箱即用的内容协商和中间件的存在使其速度很快。

#3。 可扩展

扩展基于 Express 构建的应用程序很容易,这解释了为什么许多组织使用它。 在开发大型应用程序时,Express 几乎不需要额外的配置。 许多模块、包和附加资源的存在使得开发大型应用程序变得切实可行。

#4。 中间件的存在

ExpressJS 有一系列中间件应用程序来加速和增强开发过程。 中间件使框架可以轻松地在客户端请求之前或之后运行典型脚本。 中间件的存在使开发人员可以轻松检查客户端操作,例如注册/登录和注销。

#5。 强大的路由系统

ExpressJS 的路由系统允许开发人员创建强大的 API 来处理几乎所有的 HTTP 请求。 您不必以臃肿的路由系统告终,因为您可以使用路由器实例将代码拆分为可管理的文件。 您还可以将不同的路由分组到一个目录/文件夹中,以更好地管理您的应用程序。

ExpressJS 的架构

ExpressJS-1 架构
图片来源:turing.com

Express 应用程序将包含以下组件;

  • 依赖项。 ExpressJS 本身是一个依赖项。 您可以使用 npm 命令安装其他依赖项。
  • 中间件。 ExpressJS 设置中的中间件是确定请求/响应周期的函数。
  • 实例化。 这些只是用于创建对象的语句。
  • 配置。 配置是在实例化之后或在单独的文件中定义的基于应用程序的自定义设置
  • 路线。 路由是客户端用来访问各种资源或执行服务器定义的某些操作的端点。
  • 引导服务器。 执行app.listen()函数以启动开发服务器。

入门:ExpressJS

ExpressJS 在 Node.js 上运行,这意味着您需要在您的 PC 上安装它。

您还需要节点包管理器 (npm) 来管理开发环境中的所有依赖项。

您可以根据您的操作系统通过其官方网站安装 Node。

完成后,运行这两个命令以确保分别安装了 node 和 npm。

 node --version
 npm --version

安装 ExpressJS

按着这些次序

  • 创建一个简单的 ExpressJS 应用程序。 您可以手动创建它或使用这些命令
mkdir myapp
 cd myapp
  • 使用此命令创建一个 package.json 文件
npm init
  • 根据提供的提示接受命令。 但是,改变; 入口点:(index.js) 到 app.js
  • 使用此命令安装 ExpressJS
 npm install express
  • 显示“Hello World”

在根目录中,创建一个文件并将其命名为 app.js

添加此代码

const express = require('express') const app = express() const port = 3000 app.get('/', (req, res) => { res.send('Hello World!') }) app.listen(port, () => { console.log(`Example app listening on port ${port}`) })

运行此命令以启动本地服务器

node app.js

在你的浏览器上访问 http://localhost:3000/,你会发现这个输出

快速应用程序生成器

我们上面手动创建的应用程序非常基础。 但是,您可以使用 Express 生成器来避免手动创建 ExpressJS 应用程序。

  • 这是生成 ExpressJS 应用程序的命令。
 npx express-generator
  • 如果您使用的是早于 8.2.0 的 node.js 版本,您可以安装应用程序生成器并使用这些命令启动它;
 npm install -g express-generator
 express
  • 创建您的应用
express --view=pug myapp

上面的命令将生成一个名为“myapp”的应用程序

  • 使用这些命令安装所有需要的依赖项
cd myapp npm install
  • 根据您的操作系统运行开发服务器

在 Windows PowerShell 上;

 PS> $env:DEBUG='myapp:*'; npm start

在 Windows 命令提示符下;

 > set DEBUG=myapp:* & npm start

在 macOS 或 Linux 上;

 DEBUG=myapp:* npm start

在浏览器中访问 http://localhost:3000/ ,将显示以下内容

发电机

您可以使用 ExpressJS 开发的工具/应用程序

#1。 金融科技应用

银行和金融机构正在走向数字化,提高了对金融科技应用程序的需求。 此类应用程序用于支持/启用金融和银行服务。 ExpressJS 已被证明是用于创建可扩展的金融科技应用程序的强大框架。

#2。 单一应用程序

单个应用程序,其中整个应用程序都在单个页面上路由,已成为现代应用程序开发方式。 Airbnb、Netflix、Pinterest、Paypal、Gmail 和谷歌地图等大型移动和网络应用程序是单一应用程序应用程序的完美示例。 ExpressJS 是创建具有简单路由的单应用程序应用程序的完美框架。

#3。 流媒体应用

Spotify 和 Netflix 等应用程序对最终用户来说可能看起来很简单。 但是,此类应用程序很复杂,具有多层数据。 ExpressJS 是创建此类应用程序的绝佳选择,因为它可以有效地处理异步数据流。

#4。 实时协作工具

现代工作环境由团队组成,这些团队为了共同的目标协作执行不同的任务。 ExpressJS 具有支持协作工具开发的各种功能。 此框架在创建仪表板和实时应用程序聊天时也很有用,因为它很容易与 WebSocket 集成。

优势:ExpressJS

  • 免费和开源。 您无需支付任何费用即可使用 ExpressJS。 您还可以修改现有代码以满足您的需要。
  • 易于使用。 ExpressJS 允许您编写代码而无需遵循复杂的过程。 该框架已经拥有大量工具和功能来简化流程。
  • 飞速发展。 ExpressJS 有许多模板来确保您不会从头开始创建所有内容。
  • 很棒的表现。 在 ExpressJS 上创建的应用程序表现出色,因此您可以在小型和企业应用程序上使用它。

缺点:ExpressJS

  • 一些错误消息没有帮助。 与其他后端/API 开发框架不同,ExpressJS 中的 404 响应不一定表示错误。
  • 不太擅长代码组织,因为没有最好的做事方式。

学习资源:ExpressJS

#1。 Node.js、Express、MongoDB 等

1个

如果您想从一个资源中学习整个后端堆栈,那么本课程是理想的选择。 在课程结束时,您可以使用 ExpressJS 和其他相关技术创建快速且可扩展的 RESTful API。

#2。 只是表达

2个

如果您想将该 Express 服务器作为 REST API 进行操作,则应遵循此课程。 本课程还教授 HTTP 基础知识,并使理解请求/响应周期变得容易。

#3。 React、NodeJS、Express 和 MongoDB

3个

如果您想学习如何创建 JavaScript 全栈应用程序,那么此 MERN 全栈课程是您的理想之选。 您将学到的一些东西是如何将 ReactJS 与 NodeJS、Express 和 MongoDB 连接起来,如何实现身份验证和授权等等。

#4。 Express in Action:编写、构建和测试 Node.js 应用程序

Express in Action 是一本详细介绍使用 Node 和 ExpressJS 创建 Web 应用程序的步骤的书。 您将学习如何设置 ExpressJS 应用程序、使用 MongoDB 进行数据存储以及如何测试 Express 应用程序等。

预习产品评分价格
Express in Action:编写、构建和测试 Node.js 应用程序 Express in Action:编写、构建和测试 Node.js 应用程序 39.99 美元

#5。 Express.js:Node.js Web 框架指南

Express.js:Node.js Web 框架指南手册深入探讨了 ExpressJS Web 框架。 本书中的讨论基于 ExpressJS 为用户提供的各种模型。

预习产品评分价格
Express.js:Node.js Web 框架指南 Express.js:Node.js Web 框架指南 8.38 美元

#6。 ExpressJS 官方文档

ExpressJS 是一个文档完善的 node.js 框架,您可以在官方文档上学习入门所需的一切。 无论您是初学者还是高级开发人员,都可以使用此资源。

包起来

ExpressJS 是现代世界最著名的 Node.js Web 框架之一。 各种强大的功能及其简单的学习曲线使它多年来一直保持着这一地位。 ExpressJS 是 Node.js 的基础,这意味着理解它可以很容易地掌握其他相关框架。