キーと値のデータでの操作
既存のキー値ストア内のキーと値のペアは、以下の方法で操作できます。
-
Amazon CloudFront コンソールの使用。
-
CloudFront KeyValueStore API または希望する AWS SDK の使用。
このセクションでは、既存のキー値ストアにキーと値のペアを追加する方法について説明します。キー値ストアを最初に作成するときに、キーと値のペアを含めるには、「キー値ストアの作成」を参照してください。
CloudFront コンソールを使用したキーと値のペアの操作
CloudFront コンソールを使用してキーと値のペアを操作できます。
キーと値のペアを使用するには
-
AWS Management Consoleにサインインし、https://console.aws.amazon.com/cloudfront/v4/home#/functions
で CloudFront コンソールの [関数] ページを開きます。 -
[KeyValueStores] タブを選択します。変更するキー値ストアを選択します。[詳細] ページが表示されます。
-
[キーと値のペア] セクションで、[編集] を選択します。
-
キーと値のペアを追加または削除したり、既存のキーと値のペアの値を変更したりできます。
-
完了したら、[変更を保存] を選択します。
プログラムによるキーと値のペアの操作
注記
CloudFront KeyValueStore API には、CloudFront API とは異なる名前空間があります。
キー値ストアへのリファレンスの取得
CloudFront KeyValueStore を使用して write オペレーションを開始するときは、キー値ストアの ARN と ETag を渡す必要があります。このデータを取得するには、以下を実行します。
-
希望する CloudFront API または SDK の list オペレーションを使用します。例えば、REST API の場合は CloudFront.ListKeyValueStores を使用します。このレスポンスには、キー値ストアのリストが含まれています。変更するキー値ストアの名前を探します。
-
希望する CloudFront KeyValueStore API または SDK の describe オペレーションを使用してください。例えば、REST API の場合は CloudFrontKeyValueStore.DescribeKeyValueStore を使用します。前のステップで取得した名前に渡します。
注記
CloudFront API からではなく、CloudFront KeyValueStore API からのオペレーションを使用してください。詳細については、「CloudFront KeyValueStore について」を参照してください。
レスポンスには、キー値ストアの ARN と ETag が含まれます。
-
ARN には、AWS アカウント番号、定数
key-value-store
、UUID が含まれます。例:arn:aws:cloudfront::111122223333:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
-
ETag は
ETVABCEXAMPLE2
のようになります。
-
キー値ストア内のキーと値のペアの変更
希望する CloudFront KeyValueStore API または SDK の以下のオペレーションを使用して、キーと値のペアを操作できます。これらのオペレーションはすべて、指定した 1 つのキー値ストアで機能します。
-
CloudFrontKeyValueStore.ListKeys
: キーを一覧表示します。ListKeys を参照してください。
-
CloudFrontKeyValueStore.PutKey
: 次の 2 つのアクションを実行できます。-
1 つのキー値ストアに新しいキーと値のペアを作成する: この場合は、新しいキーの名前と値を渡します。
-
1 つの既存のキーと値のペアに別の値を設定する: この場合は、既存のキー名と新しいキー値を渡します。
PutKey を参照してください。
-
-
CloudFrontKeyValueStore.UpdateKeys
: 1 つの all-or-nothing オペレーションで、次の 1 つ以上のアクションを実行できます。-
1 つ以上のキーと値のペアを削除します。
-
1 つ以上の新しいキーと値のペアを作成します。
-
1 つまたは複数の既存のキーと値のペアに別の値を設定します。
UpdateKeys を参照してください。
-
CloudFront KeyValueStore について
既存のキー値ストア内のキーと値のペアをプログラムで操作するには、CloudFront KeyValueStore サービスを使用します。
キー値ストアを最初に作成するときに、いくつかのキーと値のペアを含めるには、CloudFront サービスを使用します。
describe オペレーション
CloudFront API と CloudFront KeyValueStore API の両方に、キー値ストアに関するデータを返す describe オペレーションがあります。
-
CloudFront API は、ストア自体が最後に変更されたステータスや日付などのデータを提供します。
-
CloudFront KeyValueStore API は、ストレージリソースのコンテンツに関するデータ (ストア内のキーと値のペアやコンテンツのサイズ) を提供します。
この 2 つの API の describe オペレーションは、キー値ストアを識別する若干異なるデータを返します。
-
CloudFront API の describe オペレーションは、キー値ストアの ETag、UUID、ARN を返します。
-
CloudFront KeyValueStore API の describe オペレーションは、キー値ストアの ETag と ARN を返します。
注記
describe オペレーションはそれぞれ異なる ETag を返します。ETag は置き換え可能ではありません。
いずれかの API でオペレーションを実行する場合、適切な API から ETag を渡す必要があります。例えば、CloudFront KeyValueStore の delete オペレーションでは、CloudFront KeyValueStore の describe オペレーションから取得した 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); } })();