Express.js 中 app.use() 与 app.get() 的区别

Express.js 作为 Node.js 中广受欢迎的 Web 应用框架,为我们提供了一套强大的路由 HTTP 请求的方法。在这些方法中,INLINECODEcc9a2f45 和 INLINECODE12d79b4f 是两个基础且用途不同的函数。理解它们之间的区别对于构建高效且结构良好的 Express 应用至关重要。

前置知识:

安装步骤

步骤 1: 为你的项目创建一个新目录并使用 npm 初始化:

mkdir myapp
cd myapp
npm init -y

步骤 2: 使用以下命令在项目中安装必要的包/库。

npm install express

项目结构:

!Screenshot-2024-06-13-152451

package.json 文件中更新后的依赖项将如下所示:

"dependencies": {
    "express": "^4.19.2",
  }

INLINECODE447e13b4 和 INLINECODEf5612026 之间的区别主要体现在它们如何处理中间件和路由上。

什么是 app.use()

INLINECODE8cd90b9b 是 Express.js 中一种通用的方法,用于定义中间件函数,这些函数会对发往应用程序的每一个请求执行。中间件函数是指能够访问请求对象(INLINECODEd99cafac)、响应对象(INLINECODE11decee9)以及应用程序请求-响应周期中 INLINECODE0606d0f6 中间件函数的函数。

app.use() 的主要特点

  • 中间件定义: app.use() 用于定义在每个请求上执行的中间件,无论 HTTP 方法是什么(GET、POST、PUT、DELETE 等)。
  • 路径模式匹配: app.use() 可用于定义仅针对特定 URL 路径运行的中间件。如果未指定路径,它将应用于所有路由。
  • 顺序很重要: 调用 app.use() 的顺序会影响中间件函数的执行顺序。
  • 全局中间件: 它通常用于设置全局中间件,如日志记录、请求体解析、身份验证或错误处理。

语法:

app.use([path,],callback[,callback...])

示例: 演示上述方法的用法。

Node


CODEBLOCK_848a63e0

使用以下命令运行 index.js 文件:

node index.js

输出:

!image

Express.js 是 Node.js 中流行的 Web 应用框架,以其简单性和灵活性而闻名。Express.js 中的两个核心方法 INLINECODE9bf53407 和 INLINECODEecddb800,在处理请求和定义中间件方面起着至关重要的作用。理解这些方法之间的区别是构建有效且高效的 Web 应用程序的基础。本文探讨了 INLINECODE6df5bdfa 和 INLINECODEe0858af0 之间的区别,它们各自的用例,以及它们如何为 Express.js 应用程序的整体架构做出贡献。

什么是 app.get()

INLINECODE21b392c5 是 Express.js 中一个特定的方法,用于为 GET 请求定义路由处理程序。它是 Express.js 提供的 HTTP 方法特定路由函数之一,与 INLINECODE2c75e00e、INLINECODE83970546、INLINECODE8684c4b1 等并列。

app.get() 的主要特点

  • 路由处理: app.get() 用于为发往特定路径的 GET 请求定义路由处理程序。
  • 路径特定: 它需要一个 URL 路径作为参数,并且仅当 GET 请求与指定的路径匹配时才执行处理程序函数。
  • HTTP 方法特定: 它只处理 GET 请求,忽略其他类型的请求(POST、PUT、DELETE 等)。
  • 响应发送: 它通常通过向客户端发回响应来结束请求-响应周期。

示例: 演示上述方法的用法。

Node


CODEBLOCK_15cc07c9

使用以下命令运行 index.js 文件:

node index.js

输出:

![image](https://media.geeksforgeeks.org/wp-content/uploads/2021051

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/29189.html
点赞
0.00 平均评分 (0% 分数) - 0