在本教程中,我们将讨论如何使用 Express 框架在 Deno 中构建 Web 应用。Deno 是一个类似于 Node.js 的 JavaScript 运行时,但是它内置了安全性和类型检查的功能。而 Express.js 是一个广受欢迎的 Node.js 框架,它可以帮助我们快速构建 Web 应用程序。
本文将介绍如何使用 Deno 的 Deno Deploy 平台和 Express.js 实现 Web 应用程序。本文将涵盖以下主题:
- 安装 Deno
- 引入 Express.js
- 构建单个路由
- 使用中间件
- 创建简单的静态文件服务器
- 与数据库集成
- 支持 SSL
- 发布应用程序
安装 Deno
首先,我们需要安装 Deno 运行时。我们可以通过以下命令在我们的系统上安装 Deno:
curl -fsSL https://deno.land/x/install/install.sh | sh
您也可以通过下载二进制文件来安装 Deno:https://github.com/denoland/deno/releases
引入 Express.js
在我们的 Deno 项目中,让我们使用 npm 安装 Express.js。假设您已经安装了 npm,可以使用以下命令来安装 Express.js:
npm install express
构建单个路由
接下来,我们将创建一个简单的路由,它将返回 Hello World。
-- -------------------- ---- ------- ------ - ----------- - ---- --------------------------------- ----- --- - --- -------------- ------------- -- - ----------------- - ------ -------- --- ----- ------------ ----- ---- ---展开代码
通过使用 Oak 框架(一个基于 Deno 的 HTTP 框架),我们创建了一个应用程序实例,并定义了一个路由。在这个路由中,我们简单地将“Hello World!”字符串返回到客户端。
现在,我们可以使用以下命令在 8000 端口上启动应用程序:
deno run --allow-net app.ts
现在,访问:http://localhost:8000,你应该会看到“Hello World!”从你的浏览器.
使用中间件
Express.js 还支持中间件,它们是在路由句柄之前执行的函数。例如,我们可以使用以下代码添加一个简单的日志中间件:
app.use((req, res, next) => { console.log(`${req.method} ${req.url}`); next(); });
创建简单的静态文件服务器
假设我们有一个名为 public 的文件夹,其中包含一些静态资源。我们可以使用 Express.js 来创建一个简单的静态文件服务器:
app.use(express.static('public'));
现在,如果我们尝试访问 http://localhost:8000/image.jpg,Express.js 将在 public 文件夹中查找 image.jpg 文件并返回它。
与数据库集成
与数据库的集成是 Web 应用程序开发的一个重要方面。我们可以使用像 DenoDB 这样的 Deno SQL 库来与数据库集成。例如,要使用 DenoDB 连接 SQLite 数据库,我们可以使用以下代码:
import { connect } from "https://deno.land/x/denodb/mod.ts"; const db = await connect({ type: "sqlite", database: "database.db", });
这将连接到名为 database.db 的 SQLite 数据库,并且您可以使用 DenoDB 对此进行查询:
-- -------------------- ---- ------- ------ - ------ --------- - ---- ------------------------------------ ----- ---- ------- ----- - ------ ----- - -------- ------ ---------- - ----- ------ ------ - - --- - ----------- ----- -------------- ---- -- ----- ----------------- ------ ----------------- -- - ----- ------------- ----- -------- ------ -------------------- --- ----- ---- - ----- ------------- ------------------ -- ------- - --- -- ----- -------- ------ ------------------- -展开代码
支持 SSL
如果您想要在生产环境中使用应用程序,您需要使您的应用程序支持 SSL。我们可以使用 Deno Deploy 来轻松地添加 SSL 支持。假设您已经注册并登录了 Deno Deploy,只需使用以下命令即可在 Deno Deploy 上发布应用程序:
deno deploy --allow-net --allow-read
现在,您的应用程序应该可以在 Deno Deploy 上访问,并通过 SSL 进行加密。
发布应用程序
发布应用程序需要做一些额外的工作。首先,我们要在 package.json 文件中添加以下两个脚本:
{ "scripts": { "start": "deno run --allow-net app.ts", "deploy": "deno deploy --allow-net --allow-read <deploy-url>" } }
现在,我们可以使用以下命令在 Deno Deploy 上发布应用程序:
npm run deploy
我们可以使用以下命令在本地启动应用程序:
npm run start
另外,我们可以将应用程序部署到 Heroku、AWS Lambda 或其他类似的云平台。
总之,使用 Express.js 在 Deno 中构建 Web 应用程序非常容易。我们可以添加路由、中间件、静态文件服务器、数据库支持等。并且,通过 Deno Deploy 支持 SSL 的应用程序的发布变得更加容易。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67c6d2b0cc0f7239cde2ea6a