如何在 Express.js 中使用 Async / Await 处理异步请求

阅读时长 4 分钟读完

Express.js 是一个Node.js 的 Web 框架,它使得开发 Web 应用程序变得更加简单和快捷。在开发 Web 应用程序的过程中,异步请求是不可避免的。在异步请求上添加 Async / Await 可以使代码更加简洁和易于阅读。在本文中,我们将讨论在 Express.js 中使用异步/等待来处理异步请求。

1. 什么是 Async / Await?

在 JavaScript 中,asyncawait是一对关键字,它们被用来处理异步请求。

async 是一个关键字,用来在函数声明中指定异步函数。异步函数返回一个 Promise 对象,该 Promise 对象将在函数执行完成后被 resolved。

await 是一个关键字,可以使 JavaScript 等待一个 Promise 对象被 resolved。await 必须在异步函数中使用。

2. 基本的异步函数

我们可以使用以下代码创建一个基本的异步函数,该函数将等待一秒钟并将 resolve 一个字符串。

3. 使用 Async / Await 处理异步请求

在 Express.js 中,我们可以使用 async / await 处理异步请求并等待 Promise 对象被 resolved。

例如,我们可以编写一个简单的路由程序,它将等待 Promise 对象被 resolved 并返回结果。在下面的代码中,我们使用 await 关键字使程序等待 Promise 对象被 resolved,然后将结果返回。

-- -------------------- ---- -------
----- ------- - -------------------
----- --- - ----------

----- -------- ------------ ---- -
  ----- ---- - ----- -------------------
  ------ -----
-

------------ ----- ----- ---- -- -
  ----- ---- - ----- ------------ -----
  ---------------
---

---------------- -- -- ------------------- ------- -- ---- --------

在上面的代码中,我们逐步执行以下操作:

  1. 引入 Express 和需要的依赖项。
  2. 编写一个 async 函数(getUser()),它等待一个 Promise 对象被 resolved。
  3. 编写 app.get () 路由程序,该程序调用getUser() 函数并等待 Promise 对象被 resolved。
  4. 路由程序发送异步请求的数据。

4. 带有错误处理的异步请求

异步请求的另一个重要部分是错误处理。在异步请求中,我们需要确保在出现错误时捕获错误并返回适当的错误响应。在下面的代码中,我们将演示如何使用 Async / Await 处理带有错误处理的异步请求。

-- -------------------- ---- -------
----- ------- - -------------------
----- --- - ----------

----- -------- ------------ ---- -
  --- -
    ----- ---- - ----- -------------------
    ------ -----
  - ----- ------- -
    -------------------
    ------------ ----- -------- ----- ---------- ---- --------
  -
-

------------ ----- ----- ---- -- -
  ----- ---- - ----- ------------ -----
  ---------------
---

---------------- -- -- ------------------- ------- -- ---- --------

在上面的代码中,我们使用 try / catch 语句捕获异步请求中出现的错误,然后返回一个适当的错误响应。

结论

在 Express.js 中,Async / Await 处理异步请求是一种简单,易于理解和优秀的方法。使用 Async / Await 可以使代码更加简洁和易于阅读,同时使错误处理更加方便。在本文中,我们已经详细讨论了如何在 Express.js 中使用 Async / Await 来处理异步请求。如果你正在开发 Web 应用程序并使用 Express.js,则使用 Async / Await 处理异步请求是一种不可忽略的方法。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/675280df8bd460d3ad94f329

纠错
反馈