Express.js 是一个基于 Node.js 平台的流行开源 Web 应用程序框架。它提供了一种简单、快速、灵活的解决方案来构建 Web 应用程序。它不仅可以处理 HTTP 请求和响应,还可以轻松地处理 WebSocket、TCP、UDP 等其他协议的通信。 本篇文章将介绍 Express.js 的基本概念和使用方法,并提供一些示例代码。
Express.js 的基本概念
安装 Express.js
首先,您需要安装 Node.js 环境。在 Node.js 官网 https://nodejs.org/en/ 下载并安装 Node.js 后,打开终端,输入以下命令安装 Express.js:
npm install express
创建一个 Express.js 应用程序
在终端中输入以下命令:
mkdir myapp cd myapp npm init
输入完以上命令后,你将会得到一个名为 package.json 的文件,然后你需要在项目中安装 Express.js:
npm install express --save
创建一个名为 app.js
的文件,该文件是我们的应用程序的入口。在该文件中,我们需要加载 Express.js 模块并创建一个应用程序对象:
const express = require('express') const app = express()
路由
一个路由就是一个处理特定 URL 的应用程序端点,它由一个 URI、HTTP 请求方法(GET、POST等)和若干个处理函数组成。以下是一个简单的示例:
-- -------------------- ---- ------- -- ---------- ------------ -------- ----- ---- - --------------- -------- -- -- - ------ --------- ----------------- -------- ----- ---- - --------------- ---- --
在上面的示例中,我们定义了两个路由。第一个路由用于处理主页的请求,当发现 GET 请求访问根路径时,返回 "Hello World!" 字符串。第二个路由用于处理访问 /about 路径的 GET 请求,返回 "About us" 字符串。
中间件
中间件是在请求和响应之间进行处理的函数。常见的中间件有解析请求的 body、cookie、会话、验证和压缩等处理函数。在 Express.js 中,可以使用 app.use()
函数将中间件绑定到应用程序中的某个路由上,例如:
// 解析请求 body 的中间件 const bodyParser = require('body-parser') app.use(bodyParser.json()) // 解析 application/json 请求 app.use(bodyParser.urlencoded({ extended: true })) // 解析 application/x-www-form-urlencoded 请求
在上面的示例中,我们通过 body-parser
中间件来解析请求体,如果请求头中的Content-Type为application/json,那么该中间件会将请求体解析成 json 格式。如果请求头中的 Content-Type 为 application/x-www-form-urlencoded,它将解析请求数据并将它们附加到 req.body
对象中。
示例
下面是一个使用路由和中间件的示例,这个例子会向客户端返回一张图片的 base64 字符串。
-- -------------------- ---- ------- ----- ------- - ------------------ ----- --- - --------- -- --------- ----- ---------- - ---------------------- -------------------------- ------------------------------- --------- ---- --- -- -------- ------ --- ----------------- -------- ----- ---- - ----- ----- - ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- -------------- ---------------------------------------- -- -- ------ ---------------- -------- -- - -------------------- --- --------- -- ---- ------- --
以上代码将在本地监听 3000 端口,并提供访问 /image 路径的 GET 请求,响应一个 base64 编码的 1x1 像素的 png 图片。您可以在浏览器中访问 http://localhost:3000/image 来查看图片。
总结
Express.js 是一个流行的 Node.js 框架,它提供了一个简单、快速、灵活的解决方案来构建 Web 应用程序。在本文中,我们介绍了 Express.js 的基本概念和用法,包括安装、创建应用程序、路由、中间件等。希望这篇文章能够帮助你更深入地了解 Express.js 框架。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/64aa78d148841e989469b7af