キーバリューストアのヘルパーメソッド - Amazon CloudFront

キーバリューストアのヘルパーメソッド

このセクションは、CloudFront キーバリューストアを使用して作成する関数にキー値を含める場合に適用されます。CloudFront Functions には、キーバリューストアから値を読み取る 3 つのヘルパーメソッドを提供するモジュールがあります。

このモジュールを関数コードで使用するには、関数にキーバリューストアを関連付ける必要があります。

次に、関数コードの最初の行に、以下のステートメントを含めます。

import cf from 'cloudfront'; const kvsId = "key value store ID"; const kvsHandle = cf.kvs(kvsId);

キーバリューストア IDa1b2c3d4-5678-90ab-cdef-EXAMPLE1 のようになります。

get() 方法

このメソッドを使用して、指定したキー名のキー値を返します。

リクエスト

get("key", options);
  • key: 値をフェッチする必要があるキーの名前

  • options: 1 つのオプション format があります。これにより、関数はデータを正しく解析します。使用できる値:

    • string: (デフォルト) UTF8 エンコード

    • json

    • bytes: 未加工のバイナリデータバッファ

リクエストの例

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

レスポンス

レスポンスは promise であり、options を使用してリクエストした形式の値に解決されます。デフォルトでは、値は文字列として返されます。

エラー処理

リクエストしたキーが、関連するキーバリューストアに存在しない場合、get() メソッドはエラーを返します。このユースケースを管理するには、コードに try および catch ブロックを追加できます。

exists() 方法

このメソッドを使用して、キーがキーバリューストアに存在するかどうかを確認します。

リクエスト

exists("key");

リクエストの例

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

レスポンス

レスポンスは promise であり、ブール値 (true または false) を返します。この値は、キーがキーバリューストアに存在するかどうかを示します。

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}