Express 是一个流行的 Node.js Web 框架,它提供了各种有用的功能和特性,使得构建 Web 应用程序变得更加容易和高效。
在本文中,我们将深入探讨在 Node.js 中使用 Express 框架构建和开发应用程序的过程。我们将介绍一些基础知识,包括路由、中间件、静态资源和视图。我们还将提供一些示例代码和指导,以帮助你快速掌握使用这个框架的核心功能和技术。
路由
在 Express 中,路由是处理客户端请求的一种方式。具体来说,路由函数接收请求和响应对象,并执行相应的操作。这些操作可能是在数据库中查询数据、渲染 HTML 模板或提供 JSON 响应等。
下面是一个示例,展示了如何定义一个简单的路由:
const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello World!'); });
这个路由用于处理根路径的请求。当服务器接收到该请求时,它将响应一个字符串 Hello World!
。可以看到,路由函数在 app
对象上调用 get
方法,以侦听 HTTP GET 请求。
中间件
在 Express 中,中间件是指在请求和响应之间执行的函数。这个函数可以执行任何操作,例如检查身份验证、记录请求日志、应用不同的处理器等。
下面是一个定义一个简单中间件的示例:
const express = require('express'); const app = express(); app.use((req, res, next) => { console.log('Time:', Date.now()); next(); });
这个中间件用于记录每个请求的时间戳。在每次请求进来时都会打印出相应的时间戳。需要注意的是,所有的路由函数都在此中间件之后执行,因此这个操作会影响到所有响应。
静态资源
在 Express 中,可以通过一个独立的路由函数来处理静态资源,例如图像、CSS 和 JavaScript 文件等。这个函数可以使用 express.static
中间件来实现。
const express = require('express'); const app = express(); // 将 public 目录下所有静态资源公开 app.use(express.static('public'));
当客户端请求 /img/logo.png
时,Express 会自动检查位于 public/img/logo.png
的文件。如果找到该文件,它将返回该文件的内容,并将其发送回给客户端。
视图
Express 允许使用任何模板引擎来渲染视图,例如 Handlebars、Pug 或 EJS。这些引擎允许你创建可重用的视图组件,并通过传递变量来呈现视图。
下面是一个使用 Handlebars 引擎的示例:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ------------------------------ ----- --- - ---------- -- -- ---------- -- ------------------------ ---------- ------------- -------- -------------- -- ---- ------------ ----- ---- -- - ------------------ - ------ -------- ---- --- ---
在这个示例中,app.engine
方法告诉 Express 使用 Handlebars 引擎来呈现视图,app.set
方法设置默认视图引擎为 Handlebars。在路由函数中,我们使用 res.render
方法来呈现视图模板 home
,并传递变量 title
(Express App
),以在模板中渲染出唯一的标题。
示例代码
最后,这些示例代码可以作为快速入门指南。这些代码提供了所有上述功能的演示,帮助你入门。
-- -------------------- ---- ------- ----- ------- - ------------------- ----- ------ - ------------------------------ ----- --- - ---------- -- -- ---------- -- ------------------------ ---------- ------------- -------- -------------- -- --- - ---------- ------------- ---- ----- -- - -------------------- ------------ ------- --- -- -- - -------- ------------ ----- ---- -- - --------------- --------- --- -- -- - -- --- ------- ---------------- ----- ---- -- - ------------------ - ------ -------- ---- --- --- -- ---- - -- ------ -- ---------------------------------- -- ----- ---------------- -- -- - ------------------- ------- -- ---- ------- ---
结论
在 Node.js 中使用 Express 学习起来并不困难。通过使用示例代码并逐步了解该框架的路由、中间件、静态资源和视图等基础知识,你可以快速开始构建自己的 Web 应用程序。希望这个简单的指南对你有所帮助,欢迎加入这个大家庭来构建更好的 Web 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6773e2ac6d66e0f9aae8a164