本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
使用鍵值資料
本主題說明如何將鍵值對新增至現有的鍵值存放區。若要在最初建立鍵值存放區時包含鍵值對,請參閱 建立鍵值存放區。
使用鍵值對 (主控台)
您可以使用 CloudFront 主控台來使用鍵值對。
使用鍵值對
-
登入 , AWS Management Console 並在位於 的 CloudFront 主控台中開啟函數頁面https://console.aws.amazon.com/cloudfront/v4/home#/functions
。 -
選擇 KeyValueStores 索引標籤。
-
選擇您想要變更的鍵值存放區。
-
在鍵值對區段中,選擇編輯。
-
您可以新增鍵值對、刪除鍵值對,或變更現有鍵值對的值。
-
完成時,請選擇儲存變更。
關於 CloudFront KeyValueStore
提示
CloudFront KeyValueStore API 是使用 Signature 第 4A 版 (SigV4A) 進行身分驗證的全域服務。搭配 SigV4A 使用臨時憑證需要第 2 版工作階段字符。如需詳細資訊,請參閱搭配 CloudFront KeyValueStore API 使用臨時憑證。
如果您使用 AWS Command Line Interface (AWS CLI) 或自己的程式碼來呼叫 CloudFront KeyValueStore API,請參閱下列各節。
當您使用鍵值存放區及其鍵值對時,您呼叫的服務取決於您的使用案例:
-
若要在現有的鍵值存放區中使用鍵值對,請使用 CloudFront KeyValueStore 服務。
-
若要在最初建立鍵值存放區時,在鍵值存放區中包含鍵值對,請使用 CloudFront 服務。
CloudFront API 和 CloudFront KeyValueStore API 都具有 DescribeKeyValueStore
操作。您出於不同的原因呼叫它們。若要了解差異,請參閱下表。
CloudFront DescribeKeyValueStore API | CloudFront KeyValueStore DescribeKeyValueStore API | |
---|---|---|
鍵值存放區的資料 |
傳回資料,例如狀態和上次修改索引鍵值存放區本身的日期。 |
傳回儲存資源內容的資料 – 存放區中的鍵值對,以及內容的大小。 |
識別鍵值存放區的資料 |
傳回金鑰值存放區的 、 |
傳回鍵值存放區的 |
備註
-
每個DescribeKeyValueStore操作都會傳回不同的
ETag
。ETags
不可互換。 -
當您呼叫 API 操作以完成動作時,您必須
ETag
從適當的 API 指定 。例如,在 CloudFront KeyValueStore DeleteKey 操作中,您可以指定從 CloudFront KeyValueStore DescribeKeyValueStore操作ETag
傳回的 。 -
當您使用 CloudFront KeyValueStore 叫用 CloudFront Functions 時,金鑰值存放區中的值不會在叫用函數期間更新或變更。更新會在 函數的叫用之間處理。
使用鍵值對 (AWS CLI)
您可以針對 CloudFront KeyValueStore 執行下列 AWS Command Line Interface 命令。
列出鍵/值對
若要列出金鑰值存放區中的金鑰值對,請執行下列命令。
aws cloudfront-keyvaluestore list-keys \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example
回應
{ "Items": [ { "Key": "key1", "Value": "value1" } ] }
取得鍵值對
若要在金鑰值存放區中取得金鑰值對,請執行下列命令。
aws cloudfront-keyvaluestore get-key \ --key=key1 \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example
回應
{ "Key": "key1", "Value": "value1", "ItemCount": 1, "TotalSizeInBytes": 11 }
描述鍵值存放區
若要描述鍵值存放區,請執行下列命令。
aws cloudfront-keyvaluestore describe-key-value-store \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example
回應
{ "ETag": "KV1F83G8C2ARO7P", "ItemCount": 1, "TotalSizeInBytes": 11, "KvsARN": "arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example", "Created": "2024-05-08T07:48:45.381000-07:00", "LastModified": "2024-08-05T13:50:58.843000-07:00", "Status": "READY" }
建立鍵/值對
若要在您的鍵值存放區中建立鍵值對,請執行下列命令。
aws cloudfront-keyvaluestore put-key \ --if-match=KV1PA6795UKMFR9 \ --key=key2 \ --value=value2 \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example
回應
{ "ETag": "KV13V1IB3VIYZZH", "ItemCount": 3, "TotalSizeInBytes": 31 }
刪除鍵/值對
若要刪除鍵值對,請執行下列命令。
aws cloudfront-keyvaluestore delete-key \ --if-match=KV13V1IB3VIYZZH \ --key=key1 \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example
輸出
{ "ETag": "KV1VC38T7YXB528", "ItemCount": 2, "TotalSizeInBytes": 22 }
更新鍵值對
您可以使用 update-keys
命令來更新多個鍵值對。例如,若要刪除現有的鍵值對並建立另一個,請執行下列命令。
aws cloudfront-keyvaluestore update-keys \ --if-match=KV2EUQ1WTGCTBG2 \ --kvs-arn=arn:aws:cloudfront::123456789012:key-value-store/37435e19-c205-4271-9e5c-example \ --deletes '[{"Key":"key2"}]' \ --puts '[{"Key":"key3","Value":"value3"}]'
回應
{ "ETag": "KV3AEGXETSR30VB", "ItemCount": 3, "TotalSizeInBytes": 28 }
使用鍵值對 (API)
遵循本節以程式設計方式使用您的鍵值對。
取得索引鍵值存放區的參考
當您使用 CloudFront KeyValueStore API 呼叫寫入操作時,您需要指定金鑰值存放ETag
區的 ARN 和 。若要取得此資料,請執行下列動作:
取得索引鍵值存放區的參考
-
使用 CloudFront ListKeyValueStores API 操作取得索引鍵值存放區的清單。尋找您要變更的鍵值存放區。
-
使用 CloudFrontKeyValueStore DescribeKeyValueStore API 操作,並指定上一個步驟的鍵值存放區。
回應包含金鑰值存放
ETag
區的 ARN 和 。-
ARN 包含 AWS 帳戶 數字、常數
key-value-store
和 UUID,例如下列範例:arn:aws:cloudfront::123456789012:key-value-store/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
-
看起來像下列範例
ETag
的 :ETVABCEXAMPLE2
-
變更鍵值存放區中的鍵值對
您可以指定金鑰值存放區,其中包含您要更新的金鑰值對。
請參閱下列 CloudFront KeyValueStore API 操作:
-
CloudFrontKeyValueStore GetKey – 傳回鍵值對
-
CloudFrontKeyValueStore ListKeys – 傳回鍵值對的清單
-
CloudFrontKeyValueStore PutKey – 您可以執行下列任務:
-
透過指定新的金鑰名稱和值,在一個金鑰值存放區中建立金鑰/值對。
-
透過指定現有的金鑰名稱和新的金鑰值,在現有的金鑰值對中設定不同的值。
-
-
CloudFrontKeyValueStore UpdateKeys – 您可以在一個all-or-nothing操作中執行下列一或多個動作:
-
刪除一或多個鍵值對
-
建立一或多個新的鍵值對
-
在一或多個現有鍵值對中設定不同的值
-
CloudFront KeyValueStore 的範例程式碼
下列程式碼說明如何呼叫金鑰值存放區的 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); } })();