什么是Express?
Express是一个用于Web应用程序开发的Node.js框架,它提供了各种功能,如路由、中间件、模板引擎等。Express被广泛使用,是Node.js应用程序开发过程中最流行的框架之一。
安装
在开始使用Express之前,我们需要安装Node.js。可以从nodejs.org下载并安装Node.js。安装完成后,打开终端窗口并输入以下命令安装Express:
--- ------- -------
Hello World
下面是一个简单的Express应用程序示例,将显示“Hello World!”:
----- ------- - ------------------- ----- --- - ---------- ------------ ----- ---- -- - --------------- --------- --- ---------------- -- -- - ---------------- --------- -- ---- -------- ---
这里,我们首先引入Express模块,然后创建一个Express应用程序。我们在根路由上定义了一个GET请求处理程序,它将发送“Hello World!”响应。最后,我们启动服务器在端口3000上监听请求。
要运行此应用程序,请将代码复制到一个名为app.js的新文件中,然后使用以下命令运行:
---- ------
现在,如果您在浏览器中打开http://localhost:3000/,您将看到“Hello World!”消息。
路由
路由是指确定如何响应请求URL的机制。在Express中,路由是指将HTTP请求方法和URL映射到请求处理程序的机制。
例如,下面的代码为GET请求的“/user”URL注册一个路由,并向客户端发送一个名为“Bob”的响应:
---------------- ----- ---- -- - ---------------- ---
此代码表示当用户请求“/user”URL时,我们将向客户端发送“Bob”响应。类似地,我们可以为POST请求注册路由:
----------------- ----- ---- -- - -------------- ----------- ---
也可以使用通配符来匹配多个URL:
--------------------- ----- ---- -- - --------------- - - --------------- ---
在上面的代码中,我们为形如“/users/:id”的URL注册了一个GET请求路由,其中“:id”是一个通配符,表示请求的ID。在路由处理程序中,我们可以使用req.params.id来检索传递给路由的ID。
中间件
中间件是用于处理HTTP请求的函数。在Express中,中间件被定义为使用app.use()或app.METHOD()函数注册的函数。类似于路由,HTTP请求方法可指定为app.METHOD(),其中METHOD是请求方法,如get、post等。
中间件可以为请求添加自定义头,验证身份验证凭据,记录请求信息等。下面的代码示例为所有请求注册了一个记录请求时间的中间件:
------------- ---- ----- -- - -------------------- ------------ ------- ---
在上面的代码中,我们将使用app.use()函数为我们的应用程序注册了一个中间件。中间件打印出请求的时间戳,并调用next()函数通知Express移动到下一个中间件或路由执行。
在路由中使用中间件:
----- ------------ - ----- ---- ----- -- - ------------------ ---- ---------------- ------- - ------------------- ------------- ----- ---- -- - --------------- --------- ---
在上面的代码中,我们将路由处理程序的前面添加了一个myMiddleware中间件。中间件打印出消息“Hello from myMiddleware!”,然后调用next()函数以启动路由处理程序。
模板引擎
Express支持多种模板引擎,如EJS和Handlebars。模板引擎是将数据和模板组合成HTML页面的工具。在下面的示例中,我们将使用EJS模板引擎。
使用EJS模板引擎,我们可以定义一个模板文件,其中包含HTML和EJS标记:
------ ------ --------- --- ---- -------- ------- -------
在上面的代码中,我们使用EJS标记<%= name %>来指定将插入name变量的位置。
接下来,我们可以在我们的Express应用程序中使用此模板。要使用模板,我们需要设置模板引擎,告诉Express在哪里可以找到模板文件,并将数据传递给模板。下面的代码演示了如何执行这些操作:
----- ------- - ------------------- ----- --- - ---------- ------------- -------- ------- ---------------- --------- - ---------- ------------ ----- ---- -- - ------------------- - ----- ----- --- --- ---------------- -- -- - ---------------- --------- -- ---- -------- ---
在上面的代码中,我们将应用程序的视图引擎设置为EJS,并将应用程序的视图设置为相对于文件夹__dirname/views中的视图文件。接下来,我们定义路由处理程序,调用res.render()函数以将数据传递给名为index的视图。
最佳实践
以下是一些可以帮助您在使用Express时遵循最佳实践的提示:
- 使用中间件:中间件是非常强大的工具,可以帮助您处理各种任务。使用中间件来记录请求,验证登陆凭证等。
- 使用调试器:调试器是开发过程中的强大工具。Express内置了调试器,可以帮助您在开发应用程序时快速发现和解决问题。
- 保持清晰简洁的代码:保持简短的代码可以提高代码的可读性和可维护性。将函数分解为更小的函数,并在整个应用程序中使用统一的代码风格,可以帮助您编写更好的应用程序。
结论
Express是一个非常强大的Node.js框架,它提供了各种功能,如路由、中间件和模板引擎。它是构建高性能Web应用程序的绝佳选择,是Node.js生态系统中最受欢迎的框架之一。本文提供了使用Express的基本知识和最佳实践,以便您可以开始构建自己的Express应用程序。
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/6732fde20bc820c5823fe66c