连接到 DynamoDB
Amazon DynamoDB 是一个完全托管的 NoSQL 数据库。要将数据持久化到 DynamoDB,请按照以下步骤操作
本教程假设您拥有 AWS 和 Deno Deploy 帐户。
您可以在此处找到一个更全面的教程,该教程在 DynamoDB 之上构建了一个示例应用程序:此处。
从 DynamoDB 收集凭据
该过程的第一步是生成 AWS 凭据以以编程方式访问 DynamoDB。
生成凭据
- 转到 https://console.aws.amazon.com/iam/ 并转到“用户”部分。
- 单击**添加用户**按钮,填写**用户名**字段(可以使用
denamo
),并选择**程序访问**类型。 - 点击下一步:权限,然后点击直接附加现有策略,搜索
AmazonDynamoDBFullAccess
并选择它。 - 点击下一步:标签,然后点击下一步:审查,最后点击创建用户。
- 点击下载 .csv 按钮下载凭据。
在 Deno Deploy 中创建一个项目
接下来,让我们在 Deno Deploy 中创建一个项目,并为其设置必要的环境变量。
- 访问 https://dash.deno.com/new(如果您尚未登录,请使用 GitHub 登录),然后在从命令行部署下点击+ 空项目。
- 现在点击项目页面上的设置按钮。
- 导航到环境变量部分,并添加以下密钥。
AWS_ACCESS_KEY_ID
- 使用下载的 CSV 中访问密钥 ID 列中的值。AWS_SECRET_ACCESS_KEY
- 使用下载的 CSV 中密钥访问密钥列中的值。
编写连接到 DynamoDB 的代码
AWS 有一个 官方 SDK,它可以与浏览器一起使用。由于大多数 Deno Deploy 的 API 与浏览器类似,因此相同的 SDK 可以与 Deno Deploy 一起使用。要在 Deno 中使用 SDK,请从以下 CDN 导入并创建一个客户端
import {
DynamoDBClient,
GetItemCommand,
PutItemCommand,
} from "https://cdn.skypack.dev/@aws-sdk/client-dynamodb?dts";
// Create a client instance by providing your region information.
// The credentials are automatically obtained from environment variables which
// we set during our project creation step on Deno Deploy, so we don't have to
// pass them manually here.
const client = new ApiFactory().makeNew(DynamoDB);
serve({
"/songs": handleRequest,
});
async function handleRequest(request) {
// async/await.
try {
const data = await client.send(command);
// process data.
} catch (error) {
// error handling.
} finally {
// finally.
}
}
将应用程序部署到 Deno Deploy
完成应用程序编写后,您可以在 Deno Deploy 上部署它。
为此,请返回到您在 https://dash.deno.com/projects/<project-name>
上的项目页面。
您应该会看到几个部署选项
除非您想添加构建步骤,否则我们建议您选择 Github 集成。
有关在 Deno Deploy 上部署的不同方式以及不同配置选项的更多详细信息,请阅读 此处。