如何在 Deno 中使用 Express 进行 Web 应用开发?

阅读时长 6 分钟读完

Deno 是一个新兴的 JavaScript 和 TypeScript 运行时,它提供了一个安全的环境,可以在浏览器之外运行 JavaScript 代码。Express 则是一个流行的 Node.js Web 框架,它提供了一组用于构建 Web 应用程序的工具和功能。

在本文中,我们将探讨如何在 Deno 中使用 Express 进行 Web 应用开发。我们将介绍如何安装 Deno 和 Express,如何构建一个简单的 Web 应用程序,并讨论如何处理路由、中间件和错误处理。

安装 Deno 和 Express

在开始之前,我们需要安装 Deno 和 Express。首先,我们需要安装 Deno。可以从 Deno 的官方网站 https://deno.land/ 下载适用于您操作系统的 Deno 安装程序。

安装完成后,我们可以使用以下命令验证 Deno 是否已正确安装:

接下来,我们需要安装 Express。可以使用以下命令在 Deno 中安装 Express:

构建一个简单的 Web 应用程序

现在我们已经安装了 Deno 和 Express,我们可以开始构建一个简单的 Web 应用程序。在本例中,我们将创建一个简单的“Hello World”应用程序。

首先,创建一个名为 app.ts 的文件,并在其中添加以下代码:

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

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

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

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

在这个简单的应用程序中,我们创建了一个名为 app 的 Express 应用程序实例,并使用 app.use() 方法将一个简单的中间件添加到应用程序中。这个中间件仅仅是将请求的响应体设置为“Hello, World!”。

最后,我们通过调用 app.listen() 方法来启动应用程序。在本例中,我们将应用程序监听端口设置为 8000

现在,我们可以在终端上运行以下命令来启动我们的应用程序:

现在,我们可以在浏览器中访问 http://localhost:8000,看到输出“Hello, World!”。

处理路由

现在我们已经创建了一个简单的 Web 应用程序,让我们添加一些路由。在 Express 中,路由是由一组 URL 和处理程序组成的。在 Deno 中,我们可以使用 Oak 库来实现路由。

首先,我们需要安装 Oak。可以使用以下命令在 Deno 中安装 Oak:

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

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

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

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

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

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

在这个例子中,我们创建了一个名为 router 的 Oak 路由器实例,并使用 router.get() 方法添加两个路由。第一个路由处理 / URL,并返回“Hello, World!”。第二个路由处理 /users URL,并返回“User List”。

我们还使用 app.use() 方法将路由器添加到应用程序中,并使用 router.allowedMethods() 方法启用路由器的 HTTP 方法。

现在,我们可以在浏览器中访问 http://localhost:8000http://localhost:8000/users,看到对应的输出。

处理中间件

在 Express 中,中间件是一组函数,它们可以访问请求对象(request object)、响应对象(response object)和应用程序的下一个中间件函数。在 Deno 中,我们可以使用 Oak 库来实现中间件。

以下是一个简单的中间件示例:

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

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

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

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

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

在这个例子中,我们创建了一个名为 app 的 Oak 应用程序实例,并使用 app.use() 方法添加两个中间件。第一个中间件打印一条消息到控制台,并调用 next() 方法来调用下一个中间件。第二个中间件将请求的响应体设置为“Hello, World!”。

在中间件中,我们可以执行一些有用的操作,例如记录请求日志、验证请求、解析请求体等。

处理错误

在 Express 中,错误处理是通过错误处理中间件来处理的。在 Deno 中,我们可以使用 Oak 库来实现错误处理。

以下是一个简单的错误处理中间件示例:

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

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

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

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

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

在这个例子中,我们创建了一个名为 app 的 Oak 应用程序实例,并使用 app.use() 方法添加两个中间件。第一个中间件使用 try-catch 块来捕获下一个中间件中抛出的错误,并将错误消息设置为响应体。第二个中间件抛出一个错误。

在应用程序中添加错误处理中间件是非常重要的,因为它可以防止未处理的错误导致应用程序崩溃。

结论

在本文中,我们介绍了如何在 Deno 中使用 Express 进行 Web 应用开发。我们讨论了如何安装 Deno 和 Express,如何构建一个简单的 Web 应用程序,并讨论了如何处理路由、中间件和错误处理。

如果您想深入了解 Deno 和 Express,请查看官方文档和示例代码。祝您在 Deno 中使用 Express 开发 Web 应用程序愉快!

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

纠错
反馈