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 utama
catatan
Panggilan metode pembantu penyimpan nilai kunci dari CloudFront Functions tidak memicu AWS CloudTrail peristiwa data. Peristiwa ini tidak dicatat dalam ri CloudTrail wayat acara. Untuk informasi selengkapnya, lihat Pencatatan panggilan CloudFront API Amazon menggunakan AWS CloudTrail.
Bagian ini berlaku jika Anda menggunakan CloudFront Key Value Store untuk menyertakan nilai-nilai kunci dalam fungsi yang Anda buat. CloudFront Functions 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 menghubungkan penyimpanan nilai kunci dengan fungsi tersebut.
Selanjutnya, sertakan pernyataan berikut di baris pertama kode fungsi:
import cf from 'cloudfront'; const kvsHandle = cf.kvs();
get () metode
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 opsi,format. Ini memastikan bahwa fungsi mengurai 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 a promise yang menyelesaikan nilai dalam format yang diminta dengan menggunakanoptions. 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 ke kode Anda.
Awas
Menggunakan kombinator janji (misalnya,, Promise.allPromise.any, dan metode rantai janji (misalnya, then dancatch) dapat memerlukan penggunaan memori fungsi tinggi. Jika fungsi Anda melebihi ku ota memori fungsi maksimum, itu akan gagal dijalankan. Untuk menghindari kesalahan ini, sebaiknya gunakan 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 exist ()
Gunakan metode ini untuk mengidentifikasi apakah kunci ada atau tidak di penyimpanan nilai kunci.
Permintaan
exists("key");
Minta contoh
const exist = await kvsHandle.exists("myFunctionkey");
Respons
Responsnya adalah a promise yang mengembalikan Boolean (trueataufalse). Nilai ini menentukan apakah kunci ada atau tidak di penyimpanan nilai kunci.
meta () metode
Gunakan metode ini untuk mengembalikan metadata tentang penyimpanan nilai kunci.
Permintaan
meta();
Minta contoh
const meta = await kvsHandle.meta();
Respons
Responsnya adalah a promise yang menyelesaikan ke 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. Nilai tidak termasuk waktu propagasi ke tepi. -
keyCount: Jumlah total kunci dalam KVS setelah sinkronisasi terakhir dari sumber.
Contoh tanggapan
{keyCount:3,creationDateTime:2023-11-30T23:07:55.765Z,lastUpdatedDateTime:2023-12-15T03:57:52.411Z}