学习

Deno

Ajeet Raina
作者
Ajeet Raina, Redis 前开发者增长经理

Deno 拥有超过 80,000 颗星和 670 多名贡献者,是一个流行的现代 JavaScript 和 TypeScript 运行时。它构建于 V8 之上,V8 是 Chromium 项目为 Google Chrome 和 Chromium 网络浏览器开发的开源 JavaScript 引擎。

Deno 的特性#

  • Deno 默认是安全的。它在沙箱环境中执行代码,不允许运行时访问底层文件系统、环境变量和脚本。
  • Deno 原生支持 JavaScript 和 TypeScript。
  • Deno 作为单个可执行文件分发,没有依赖项。
  • 内置了依赖检查器 (deno info) 和代码格式化程序 (deno fmt) 等实用工具。

入门#

deno.land/x 是 Deno 脚本的托管服务。它缓存存储在 GitHub 上的开源模块的版本,并在一个易于记忆的域名下提供服务。这些模块包含展示 Deno 及其标准模块使用的小脚本。

代码 URL 的基本格式是

https://deno.land/x/IDENTIFIER@VERSION/FILE_PATH

示例#

https://deno.land/[email protected]/examples

要在 Deno 中使用 Redis,你需要一个 Deno Redis 客户端。在以下章节中,我们将演示如何使用 一个针对 Deno 的 Redis 客户端的实验性实现

步骤 1. 设置免费的 Redis Cloud 账户#

访问 redis.com/try-free 并创建免费的 Redis Cloud 账户。完成本教程后,你将获得数据库端点 URL 和密码。保存以备将来参考。

提示

限时优惠,使用 TIGER200 在 Redis Cloud 上获得 200 美元 积分,体验所有高级功能!

🎉 点击这里注册

步骤 2. 获取 Deno#

brew install deno

步骤 3. 验证 Deno 是否正确安装#

deno -V
deno 1.19.0

步骤 4. 创建一个空文件并添加以下内容#

以下代码使用 Deno 创建 Redis 连接

import { connect } from 'https://deno.land/x/redis/mod.ts';
const redis = await connect({
  hostname: 'redis-18386.c110-qa.us-east-1-1.ec2.qa-cloud.redislabs.com',
  port: 18386,
  password: 'XXXX',
});
const ok = await redis.set('foo', 'bar');
const foo = await redis.get('foo');

将 hostname 和 port 的值替换为你 Redis 数据库的对应值,如果需要,添加额外的 password 字段。

步骤 5. 执行脚本#

Deno 可以从多个来源获取脚本。例如,你可以提供文件名、URL 或 '-' 从标准输入读取文件。你可以通过执行 deno run 来运行 JavaScript 或 TypeScript 程序。

deno run --allow-net redis.ts

当你运行脚本时,应该输出 foo 的值。你可以通过运行 monitor 命令来验证这一点:

redis-15692.c264.ap-south-1-1.ec2.cloud.redislabs.com:15692> monitor
OK
1646536310.435577 [0 122.171.165.94:50193] "AUTH" "(redacted)"
1646536310.475578 [0 122.171.165.94:50193] "SET" "foo" "bar"
1646536310.511578 [0 122.171.165.94:50193] "GET" "foo"

附加参考资料:#

最后更新于 2024 年 2 月 23 日