AWS SDK untuk JavaScript V2 telah mencapai akhir dukungan. Kami menyarankan Anda bermigrasi ke AWS SDK untuk JavaScript v3. Untuk detail dan informasi tambahan tentang cara bermigrasi, silakan lihat pengumuman ini
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan Objek Respon
Setelah metode objek layanan dipanggil, ia mengembalikan AWS.Response objek dengan meneruskannya ke fungsi callback Anda. Anda mengakses isi respons melalui properti AWS.Response objek. Ada dua properti AWS.Response objek yang Anda gunakan untuk mengakses konten respons:
-
dataproperti -
errorproperti
Saat menggunakan mekanisme callback standar, kedua properti ini disediakan sebagai parameter pada fungsi callback anonim seperti yang ditunjukkan pada contoh berikut.
function(error, data) { if (error) { // error handling code console.log(error); } else { // data handling code console.log(data); } }
Mengakses Data yang Dikembalikan dalam Objek Respon
Pro data perti AWS.Response objek berisi data serial yang dikembalikan oleh permintaan layanan. Ketika permintaan berhasil, data properti berisi objek yang berisi peta ke data yang dikembalikan. Pro data perti dapat menjadi null jika terjadi kesalahan.
Berikut adalah contoh memanggil getItem metode tabel DynamoDB untuk mengambil nama file dari file gambar untuk digunakan sebagai bagian dari permainan.
// Initialize parameters needed to call DynamoDB var slotParams = { Key : {'slotPosition' : {N: '0'}}, TableName : 'slotWheels', ProjectionExpression: 'imageFile' }; // prepare request object for call to DynamoDB var request = new AWS.DynamoDB({region: 'us-west-2', apiVersion: '2012-08-10'}).getItem(slotParams); // log the name of the image file to load in the slot machine request.on('success', function(response) { // logs a value like "cherries.jpg" returned from DynamoDB console.log(response.data.Item.imageFile.S); }); // submit DynamoDB request request.send();
Untuk contoh ini, tabel DynamoDB adalah pencarian gambar yang menunjukkan hasil tarikan mesin slot seperti yang ditentukan oleh parameter di. slotParams
Setelah pemanggilan getItem metode yang berhasil, data properti AWS.Response objek berisi Item objek yang dikembalikan oleh DynamoDB. Data yang dikembalikan diakses sesuai dengan ProjectionExpression parameter permintaan, yang dalam hal ini berarti imageFile anggota Item objek. Karena imageFile anggota memegang nilai string, Anda mengakses nama file gambar itu sendiri melalui nilai anggota S anak dariimageFile.
Paging Melalui Data yang Dikembalikan
Terkadang konten data properti yang dikembalikan oleh permintaan layanan mencakup beberapa halaman. Anda dapat mengakses halaman data berikutnya dengan memanggil response.nextPage metode. Metode ini mengirimkan permintaan baru. Respons dari permintaan dapat ditangkap baik dengan panggilan balik atau dengan pendengar sukses dan kesalahan.
Anda dapat memeriksa untuk melihat apakah data yang dikembalikan oleh permintaan layanan memiliki halaman data tambahan dengan memanggil response.hasNextPage metode. Metode ini mengembalikan boolean untuk menunjukkan apakah panggilan response.nextPage mengembalikan data tambahan.
s3.listObjects({Bucket: 'bucket'}).on('success', function handlePage(response) { // do something with response.data if (response.hasNextPage()) { response.nextPage().on('success', handlePage).send(); } }).send();
Mengakses Informasi Kesalahan dari Objek Respon
Pro error perti AWS.Response objek berisi data kesalahan yang tersedia jika terjadi kesalahan layanan atau kesalahan transfer. Kesalahan yang dikembalikan mengambil bentuk berikut.
{ code: 'SHORT_UNIQUE_ERROR_CODE', message: 'a descriptive error message' }
Dalam kasus kesalahan, nilai data properti adalahnull. Jika Anda menangani peristiwa yang dapat berada dalam status kegagalan, selalu periksa apakah error properti telah ditetapkan sebelum mencoba mengakses nilai data properti.
Mengakses Objek Permintaan Asal
Pro request perti menyediakan akses ke AWS.Request objek asal. Ini dapat berguna untuk merujuk ke AWS.Request objek asli untuk mengakses parameter asli yang dikirim. Dalam contoh berikut, request properti digunakan untuk mengakses Key parameter permintaan layanan asli.
s3.getObject({Bucket: 'bucket', Key: 'key'}).on('success', function(response) { console.log("Key was", response.request.params.Key); }).send();