Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Metode pembantu untuk penyimpanan nilai kunci
catatan
Panggilan metode pembantu penyimpanan nilai kunci dari CloudFront Fungsi tidak memicu peristiwa AWS CloudTrail data. Peristiwa ini tidak dicatat dalam riwayat CloudTrail peristiwa. Untuk informasi selengkapnya, lihat Mencatat panggilan CloudFront API Amazon menggunakan AWS CloudTrail.
Bagian ini berlaku jika Anda menggunakan CloudFront Key Value Store untuk menyertakan nilai kunci dalam fungsi yang Anda buat. CloudFront Fungsi memiliki modul yang menyediakan tiga metode pembantu untuk membaca nilai dari penyimpanan nilai kunci.
Untuk menggunakan modul ini dalam kode fungsi, pastikan bahwa Anda telah mengaitkan penyimpanan nilai kunci dengan fungsi tersebut.
Selanjutnya, sertakan pernyataan berikut di baris pertama kode fungsi:
import cf from 'cloudfront'; const kvsHandle = cf.kvs();
Metode get()
Gunakan metode ini untuk mengembalikan nilai kunci untuk nama kunci yang Anda tentukan.
Permintaan
get("
key
",options
);
-
key
: Nama kunci yang nilainya perlu diambil -
options
: Ada satu pilihan,format
. Ini memastikan bahwa fungsi mem-parsing data dengan benar. Kemungkinan nilai:-
string
: (Default) UTF8 dikodekan -
json
-
bytes
: Buffer data biner mentah
-
Minta contoh
const value = await kvsHandle.get("myFunctionKey", { format: "string"});
Respons
Responsnya adalah promise
yang menyelesaikan nilai dalam format yang diminta dengan menggunakan. options
Secara default, nilai dikembalikan sebagai string.
Penanganan kesalahan
get()
Metode ini akan mengembalikan kesalahan ketika kunci yang Anda minta tidak ada di penyimpanan nilai kunci terkait. Untuk mengelola kasus penggunaan ini, Anda dapat menambahkan try
dan catch
memblokir kode Anda.
Awas
Menggunakan kombinator janji (misalnya,Promise.all
,Promise.any
, dan metode rantai janji (misalnya, then
dancatch
) dapat memerlukan penggunaan memori fungsi tinggi. Jika fungsi Anda melebihi kuota memori fungsi maksimum, itu akan gagal dijalankan. Untuk menghindari kesalahan ini, kami sarankan Anda menggunakan await
sintaks secara berurutan atau dalam loop untuk meminta beberapa nilai.
Contoh
var value1 = await kvs.get('key1'); var value2 = await kvs.get('key2');
Saat ini, menggunakan kombinator janji untuk mendapatkan beberapa nilai tidak akan meningkatkan kinerja, seperti contoh berikut.
var values = await Promise.all([kvs.get('key1'), kvs.get('key2'),]);
Metode exists()
Gunakan metode ini untuk mengidentifikasi apakah kunci ada di penyimpanan nilai kunci atau tidak.
Permintaan
exists("
key
");
Minta contoh
const exist = await kvsHandle.exists("myFunctionkey");
Respons
Responsnya adalah promise
yang mengembalikan Boolean (true
ataufalse
). Nilai ini menentukan apakah kunci ada atau tidak di penyimpanan nilai kunci.
Metode meta()
Gunakan metode ini untuk mengembalikan metadata tentang penyimpanan nilai kunci.
Permintaan
meta();
Minta contoh
const meta = await kvsHandle.meta();
Respons
Responsnya adalah promise
yang menyelesaikan objek dengan properti berikut:
-
creationDateTime
: Tanggal dan waktu penyimpanan nilai kunci dibuat, dalam format ISO 8601. -
lastUpdatedDateTime
: Tanggal dan waktu penyimpanan nilai kunci terakhir disinkronkan dari sumber, dalam format ISO 8601. Nilainya tidak termasuk waktu propagasi ke tepi. -
keyCount
: Jumlah total kunci di KVS setelah sinkronisasi terakhir dari sumber.
Contoh respons
{keyCount:3,creationDateTime:2023-11-30T23:07:55.765Z,lastUpdatedDateTime:2023-12-15T03:57:52.411Z}