键值存储的帮助程序方法 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

键值存储的帮助程序方法

注意

来自 CloudFront Functions 的键值存储辅助方法调用不会触发 Amazon CloudTrail 数据事件。这些事件不会记录在 CloudTrail 事件历史记录中。有关更多信息,请参阅 使用 Amazon CloudTrail 记录 Amazon CloudFront API 调用

如果您使用 CloudFront 键值存储在您创建的函数中包含键值,则本节适用。CloudFront Functions 有一个模块,该模块提供了三种用于从键值存储中读取值的帮助程序方法。

要在函数代码中使用此模块,请确保已将相关键值存储与该函数关联。

接下来,在函数代码的第一行中添加以下语句:

import cf from 'cloudfront'; const kvsHandle = cf.kvs();

get() 方法

使用此方法可返回您指定的键名称的键值。

请求

get("key", options);
  • key:需要提取其值的键的名称

  • options:包含一个选项 format。它可以确保函数正确地解析数据。可能的值:

    • string:(默认)UTF8 编码

    • json

    • bytes:原始二进制数据缓冲区

请求示例

const value = await kvsHandle.get("myFunctionKey", { format: "string"});

响应

响应是以使用 options 请求的格式解析为值的 promise。默认情况下,此值以字符串的形式返回。

错误处理

当您请求的键在关联的键值存储中不存在时,get() 方法将返回错误。要管理此使用案例,可以在代码中添加 trycatch 块。

exists() 方法

使用该方法可确定此键在键值存储中是否存在。

请求

exists("key");

请求示例

const exist = await kvsHandle.exists("myFunctionkey");

响应

响应是返回布尔值(truefalse)的 promise。该值指定此键在键值存储中是否存在。

meta() 方法

使用此方法返回有关键值存储的元数据。

请求

meta();

请求示例

const meta = await kvsHandle.meta();

响应

响应是解析为具有以下属性的对象的 promise

  • creationDateTime:创建键值存储的日期和时间,采用 ISO 8601 格式。

  • lastUpdatedDateTime:上次从源中同步键值存储的日期和时间,采用 ISO 8601 格式。该值不包括向边缘传播的时间。

  • keyCount:上次从源同步后 KVS 中的键总数。

响应示例

{keyCount:3,creationDateTime:2023-11-30T23:07:55.765Z,lastUpdatedDateTime:2023-12-15T03:57:52.411Z}