处理键值数据 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

处理键值数据

您可以通过以下方式使用现有键值存储中的键值对:

  • 使用 Amazon CloudFront 控制台。

  • 使用 CloudFront KeyValueStore API 或您首选的 Amazon SDK。

本节介绍如何将键值对添加到现有的键值存储中。要在最初创建键值存储时包含键值对,请参阅创建键值存储

使用 CloudFront 控制台处理键值对

您可以使用 CloudFront 控制台处理键值对。

使用键值对
  1. 登录到 Amazon Web Services Management Console 并通过以下网址打开 CloudFront 控制台中的函数页面:https://console.amazonaws.cn/cloudfront/v4/home#/functions

  2. 选择 KeyValueStores 选项卡。选择要更改的键值存储。此时会显示详细信息页面。

  3. 键值对部分,选择编辑

  4. 您可以添加键值对、删除键值对或更改现有键值对的值。

  5. 完成后,请选择保存更改

以编程方式处理键值对

注意

CloudFront KeyValueStore API 的命名空间与 CloudFront API 的命名空间不同。

获取对键值存储的引用

当您使用 CloudFront KeyValueStore 输入写入操作时,需要传入键值存储的 ARN 和 ETag。要获取此数据,请执行以下操作:

  1. 使用您首选的 CloudFront API 或 SDK 的列表操作。例如,对于 REST API,请使用 CloudFront.ListKeyValueStores。响应包含键值存储的列表。找到要更改的键值存储的名称。

  2. 使用您首选的 CloudFront KeyValueStore API 或 SDK 的描述操作。例如,对于 REST API,请使用 CloudFrontKeyValueStore.DescribeKeyValueStore。传入您在上一步中获得的名称。

    注意

    使用 CloudFront KeyValueStore API 中的操作,而不是来自 CloudFront API 的操作。有关更多信息,请参阅 关于 CloudFront KeyValueStore

    响应包括键值存储的 ARN 和 ETag。

    • ARN 包括 Amazon Web Services 账户编号、常量 key-value-store 和 UUID。例如:

      arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111

    • ETag 类似于 ETVABCEXAMPLE2

更改键值存储中的键值对

您可以使用首选的 CloudFront KeyValueStore API 或 SDK 的以下操作来处理键值对。所有这些操作都适用于一个指定的键值存储:

  • CloudFrontKeyValueStore.DeleteKey:删除一个键。请参阅 DeleteKey

  • CloudFrontKeyValueStore.GetKey:获取一个键。请参阅 GetKey

  • CloudFrontKeyValueStore.ListKeys:列出键。请参阅 ListKeys

  • CloudFrontKeyValueStore.PutKey:您可以执行两项操作:

    • 在一个键值存储中创建新的键值对:在这种情况下,将传递新的键名称和值。

    • 在一个现有键值对中设置不同的值:在这种情况下,将传递一个现有键名称和一个新的键值。

    请参阅 PutKey

  • CloudFrontKeyValueStore.UpdateKeys:您可以通过一项“要么全有,要么全无”操作执行以下一项或多项操作:

    • 删除一个或多个键值对。

    • 创建一个或多个新的键值对。

    • 在一个或多个现有键值对中设置不同的值。

    请参阅 UpdateKeys

关于 CloudFront KeyValueStore

要在现有 键值存储中以编程方式处理键值对,您可以使用 CloudFront KeyValueStore 服务。

要在最初创建键值存储时在键值存储中包含一些键值对,可以使用 CloudFront 服务。

描述操作

CloudFront API 和 CloudFront KeyValueStore API 都有一个描述操作,可以返回有关键值存储的数据:

  • CloudFront API 提供诸如状态和存储本身上次修改日期之类的数据。

  • CloudFront KeyValueStore API 提供有关存储资源的内容 的数据,即存储中的键值对以及内容的大小。

这两个 API 中的描述操作返回的标识键值存储的数据略有不同:

  • CloudFront API 中的描述操作会返回键值存储的 ETag、UUID 和 ARN。

  • CloudFront KeyValueStore API 中的描述操作返回键值存储的 ETag 和 ARN。

注意

每个描述操作都会返回一个不同 的 ETag。ETag 不可互换。

当您在其中一个 API 中执行操作时,必须从相应的 API 中传入 ETag。例如,在 CloudFront KeyValueStore 的删除操作中,传入您从 CloudFront KeyValueStore 中的描述操作获得的 ETag。

CloudFront KeyValueStore 代码示例

例 :调用 DescribeKeyValueStore API 操作

以下代码示例演示了如何为键值存储调用 DescribeKeyValueStore API 操作。

const { CloudFrontKeyValueStoreClient, DescribeKeyValueStoreCommand, } = require("@aws-sdk/client-cloudfront-keyvaluestore"); require("@aws-sdk/signature-v4-crt"); (async () => { try { const client = new CloudFrontKeyValueStoreClient({ region: "us-east-1" }); const input = { KvsARN: "arn:aws:cloudfront::123456789012:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", }; const command = new DescribeKeyValueStoreCommand(input); const response = await client.send(command); } catch (e) { console.log(e); } })();