Mengelola Topik di Amazon SNS - AWS SDK for JavaScript

Kami mengumumkan yang akan datang end-of-support untuk AWS SDK for JavaScript v2. Kami menyarankan Anda bermigrasi ke AWS SDK for JavaScript v3. Untuk tanggal, detail tambahan, dan informasi tentang cara bermigrasi, silakan merujuk ke pengumuman tertaut.

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengelola Topik di Amazon SNS

JavaScript code example that applies to Node.js execution

Contoh kode Node.js ini menunjukkan:

  • Cara membuat topik di Amazon SNS tempat Anda dapat mempublikasikan notifikasi.

  • Cara menghapus topik yang dibuat di Amazon SNS.

  • Cara mendapatkan daftar topik yang tersedia.

  • Cara mendapatkan dan mengatur atribut topik.

Skenario

Dalam contoh ini, Anda menggunakan serangkaian modul Node.js untuk membuat, membuat daftar, dan menghapus topik Amazon SNS, dan untuk menangani atribut topik. Modul Node.js menggunakan SDK JavaScript untuk mengelola topik menggunakan metode kelas AWS.SNS klien berikut:

Tugas Prasyarat

Untuk mengatur dan menjalankan contoh ini, Anda harus terlebih dahulu menyelesaikan tugas-tugas ini:

Membuat Topik

Dalam contoh ini, gunakan modul Node.js untuk membuat topik Amazon SNS. Buat modul Node.js dengan nama filesns_createtopic.js. Konfigurasikan SDK seperti yang ditunjukkan sebelumnya.

Buat objek untuk meneruskan topik baru ke createTopic metode kelas AWS.SNS klien. Name Untuk memanggil createTopic metode ini, buat janji untuk memanggil objek layanan Amazon SNS, melewati objek parameter. Kemudian tangani callback response in the promise. Yang data dikembalikan oleh janji berisi ARN topik.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create promise and SNS service object var createTopicPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .createTopic({ Name: "TOPIC_NAME" }) .promise(); // Handle promise's fulfilled/rejected states createTopicPromise .then(function (data) { console.log("Topic ARN is " + data.TopicArn); }) .catch(function (err) { console.error(err, err.stack); });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node sns_createtopic.js

Kode contoh ini dapat ditemukan di sini GitHub.

Daftar Topik Anda

Dalam contoh ini, gunakan modul Node.js untuk mencantumkan semua topik Amazon SNS. Buat modul Node.js dengan nama filesns_listtopics.js. Konfigurasikan SDK seperti yang ditunjukkan sebelumnya.

Buat objek kosong untuk diteruskan ke listTopics metode kelas AWS.SNS klien. Untuk memanggil listTopics metode ini, buat janji untuk memanggil objek layanan Amazon SNS, melewati objek parameter. Kemudian tangani callback response in the promise. Yang data dikembalikan oleh janji berisi larik ARN topik Anda.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create promise and SNS service object var listTopicsPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .listTopics({}) .promise(); // Handle promise's fulfilled/rejected states listTopicsPromise .then(function (data) { console.log(data.Topics); }) .catch(function (err) { console.error(err, err.stack); });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node sns_listtopics.js

Kode contoh ini dapat ditemukan di sini GitHub.

Menghapus Topik

Dalam contoh ini, gunakan modul Node.js untuk menghapus topik Amazon SNS. Buat modul Node.js dengan nama filesns_deletetopic.js. Konfigurasikan SDK seperti yang ditunjukkan sebelumnya.

Buat objek yang TopicArn berisi topik yang akan dihapus untuk diteruskan ke deleteTopic metode kelas AWS.SNS klien. Untuk memanggil deleteTopic metode ini, buat janji untuk memanggil objek layanan Amazon SNS, melewati objek parameter. Kemudian tangani callback response in the promise.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create promise and SNS service object var deleteTopicPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .deleteTopic({ TopicArn: "TOPIC_ARN" }) .promise(); // Handle promise's fulfilled/rejected states deleteTopicPromise .then(function (data) { console.log("Topic Deleted"); }) .catch(function (err) { console.error(err, err.stack); });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node sns_deletetopic.js

Kode contoh ini dapat ditemukan di sini GitHub.

Mendapatkan Atribut Topik

Dalam contoh ini, gunakan modul Node.js untuk mengambil atribut topik Amazon SNS. Buat modul Node.js dengan nama filesns_gettopicattributes.js. Konfigurasikan SDK seperti yang ditunjukkan sebelumnya.

Buat objek yang TopicArn berisi topik yang akan dihapus untuk diteruskan ke getTopicAttributes metode kelas AWS.SNS klien. Untuk memanggil getTopicAttributes metode ini, buat janji untuk memanggil objek layanan Amazon SNS, melewati objek parameter. Kemudian tangani callback response in the promise.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create promise and SNS service object var getTopicAttribsPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .getTopicAttributes({ TopicArn: "TOPIC_ARN" }) .promise(); // Handle promise's fulfilled/rejected states getTopicAttribsPromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node sns_gettopicattributes.js

Kode contoh ini dapat ditemukan di sini GitHub.

Pengaturan Atribut Topik

Dalam contoh ini, gunakan modul Node.js untuk menyetel atribut yang dapat berubah dari topik Amazon SNS. Buat modul Node.js dengan nama filesns_settopicattributes.js. Konfigurasikan SDK seperti yang ditunjukkan sebelumnya.

Buat objek yang berisi parameter untuk pembaruan atribut, termasuk topik yang atributnya ingin Anda tetapkan, nama atribut yang akan ditetapkan, dan nilai baru untuk atribut tersebut. TopicArn Anda hanya dapat mengaturPolicy,DisplayName, dan DeliveryPolicy atribut. Lewati parameter ke setTopicAttributes metode kelas AWS.SNS klien. Untuk memanggil setTopicAttributes metode ini, buat janji untuk memanggil objek layanan Amazon SNS, melewati objek parameter. Kemudian tangani callback response in the promise.

// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create setTopicAttributes parameters var params = { AttributeName: "ATTRIBUTE_NAME" /* required */, TopicArn: "TOPIC_ARN" /* required */, AttributeValue: "NEW_ATTRIBUTE_VALUE", }; // Create promise and SNS service object var setTopicAttribsPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .setTopicAttributes(params) .promise(); // Handle promise's fulfilled/rejected states setTopicAttribsPromise .then(function (data) { console.log(data); }) .catch(function (err) { console.error(err, err.stack); });

Untuk menjalankan contoh, ketik berikut ini di baris perintah.

node sns_settopicattributes.js

Kode contoh ini dapat ditemukan di sini GitHub.