在现代 Web 开发中,使用 Node.js 和 Express.js 是非常常见的选择。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行时环境,而 Express.js 是一个基于 Node.js 的 Web 应用程序框架。本文将介绍如何使用 Express.js 和 Node.js 创建 Web 应用的完整教程。
安装 Node.js 和 Express.js
首先,我们需要安装 Node.js 和 Express.js。在安装 Node.js 的同时,也会安装 Node.js 的包管理器 npm。打开终端并运行以下命令:
$ sudo apt-get update $ sudo apt-get install nodejs $ sudo apt-get install npm
安装完成后,我们可以运行以下命令来检查 Node.js 和 npm 是否安装成功:
$ node -v $ npm -v
接下来,我们需要安装 Express.js。打开终端并运行以下命令:
$ npm install express --save
这将在项目目录下安装 Express.js 并将其添加到 package.json 文件中。
创建 Express.js 应用程序
现在,我们将创建一个简单的 Express.js 应用程序。在项目目录下创建一个名为 app.js 的文件,并将以下代码添加到文件中:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- --- - ---------- ------------ ------------- ---- - --------------- --------- --- ---------------- ---------- - -------------------- --- --------- -- ---- -------- ---展开代码
这段代码创建了一个 Express.js 应用程序,并将其绑定到本地主机的 3000 端口。当我们访问 http://localhost:3000/ 时,将显示 "Hello World!"。
路由
路由是指如何处理客户端请求的机制。在 Express.js 中,我们可以使用 app.get()、app.post()、app.put()、app.delete() 等方法来定义路由。例如,我们可以创建一个路由来处理 /about 页面的请求:
app.get('/about', function(req, res) { res.send('About page'); });
当我们访问 http://localhost:3000/about 时,将显示 "About page"。
中间件
中间件是指在请求和响应之间执行的函数。在 Express.js 中,我们可以使用 app.use() 方法来定义中间件。例如,我们可以创建一个中间件来记录每个请求的时间戳:
app.use(function(req, res, next) { console.log('Time:', Date.now()); next(); });
这将在每个请求之前打印出当前时间戳。
模板引擎
模板引擎是指将数据和 HTML 模板结合起来生成 HTML 页面的机制。在 Express.js 中,我们可以使用各种模板引擎,例如 EJS、Jade、Handlebars 等。例如,我们可以使用 EJS 模板引擎来生成动态 HTML 页面:
首先,我们需要安装 EJS 模板引擎:
$ npm install ejs --save
然后,我们需要创建一个名为 views 的文件夹,并在其中创建一个名为 index.ejs 的文件。在 index.ejs 中,我们可以使用 EJS 的语法来插入动态数据:
-- -------------------- ---- ------- --------- ----- ------ ------ ---------- ----- ---------- ------- ------ ------- ------- ------- ------- -------展开代码
接下来,我们需要修改 app.js 中的代码,以便使用 EJS 模板引擎:
-- -------------------- ---- ------- ----- ------- - ------------------- ----- --- - ---------- ------------- -------- ------- ------------ ------------- ---- - ------------------- - ------ ----------- -------- -------- -- -- --------- --- --- ---------------- ---------- - -------------------- --- --------- -- ---- -------- ---展开代码
这将渲染 views/index.ejs 文件,并将 title 和 message 数据传递给模板引擎。
数据库
在现代 Web 应用程序中,数据库是非常重要的组成部分。在 Node.js 中,我们可以使用各种数据库,例如 MongoDB、MySQL、PostgreSQL 等。例如,我们可以使用 MongoDB 数据库来存储和检索数据:
首先,我们需要安装 MongoDB:
$ sudo apt-get install mongodb
然后,我们需要安装 MongoDB 驱动程序:
$ npm install mongodb --save
接下来,我们需要连接到 MongoDB 数据库并插入一些数据:
-- -------------------- ---- ------- ----- ----------- - ------------------------------- ----- --- - --------------------------------- ------------------------ ------------- --- - -- ----- ----- ---- ----- ---------- - ----------------------- ---------------------- ----- ------- ---- -- -- ------------- ------- - -- ----- ----- ---- --------------------- ----------- --------------- ----------- --- ---展开代码
这将连接到名为 mydb 的 MongoDB 数据库,并在 users 集合中插入一个文档。
结论
在本文中,我们介绍了如何使用 Express.js 和 Node.js 创建 Web 应用的完整教程。我们讨论了路由、中间件、模板引擎和数据库等主题,并提供了示例代码。我们希望这篇文章可以帮助您了解如何使用 Express.js 和 Node.js 构建现代 Web 应用程序。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675d5db2e1dcc5c0fa3be072