Themen in Amazon SNS verwalten - AWS SDK for JavaScript

Wir haben das Kommende end-of-support für AWS SDK for JavaScript v2 angekündigt. Wir empfehlen Ihnen, auf AWS SDK for JavaScript Version 3 zu migrieren. Termine, weitere Details und Informationen zur Migration finden Sie in der verlinkten Ankündigung.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Themen in Amazon SNS verwalten

JavaScript code example that applies to Node.js execution

Dieses Node.js-Codebeispiel zeigt:

  • So erstellen Sie Themen in Amazon SNS, zu denen Sie Benachrichtigungen veröffentlichen können.

  • So löschen Sie in Amazon SNS erstellte Themen.

  • Abrufen einer Liste von verfügbaren Themen

  • Abrufen und Festlegen von Themenattributen

Das Szenario

In diesem Beispiel verwenden Sie eine Reihe von Node.js -Modulen, um Amazon SNS SNS-Themen zu erstellen, aufzulisten und zu löschen und Themenattribute zu verarbeiten. Die Module Node.js verwenden das SDK JavaScript zur Verwaltung von Themen mithilfe der folgenden Methoden der AWS.SNS Client-Klasse:

Erforderliche Aufgaben

Zum Einrichten und Ausführen dieses Beispiels müssen Sie zunächst diese Aufgaben abschließen:

Erstellen eines Themas

Verwenden Sie in diesem Beispiel ein Modul Node.js, um ein Amazon SNS SNS-Thema zu erstellen. Erstellen Sie ein Node.js-Modul mit dem Dateinamen sns_createtopic.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, um den Namen (Name) für das neue Thema an die createTopic-Methode der AWS.SNS-Client-Klasse zu übergeben. Um die createTopic Methode aufzurufen, erstellen Sie eine Zusage für den Aufruf eines Amazon SNS-Serviceobjekts, indem Sie das Parameterobjekt übergeben. Verarbeiten Sie anschließend die response im Promise-Callback. Die vom Promise-Objekt zurückgegebenen Daten (data) enthalten den ARN des Themas.

// 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); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

node sns_createtopic.js

Diesen Beispielcode finden Sie hier auf. GitHub

Auflisten Ihrer -Themen

Verwenden Sie in diesem Beispiel ein Modul Node.js, um alle Amazon SNS SNS-Themen aufzulisten. Erstellen Sie ein Node.js-Modul mit dem Dateinamen sns_listtopics.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein leeres Objekt, das an die listTopics-Methode der AWS.SNS-Client-Klasse übergeben wird. Um die listTopics Methode aufzurufen, erstellen Sie eine Zusage für den Aufruf eines Amazon SNS-Serviceobjekts, indem Sie das Parameterobjekt übergeben. Verarbeiten Sie anschließend die response im Promise-Callback. Die vom Promise zurückgegebenen Daten (data) enthalten ein Array von ARNs Ihrer Themen.

// 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); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

node sns_listtopics.js

Diesen Beispielcode finden Sie hier auf. GitHub

Löschen eines Themas

Verwenden Sie in diesem Beispiel ein Modul Node.js, um ein Amazon SNS SNS-Thema zu löschen. Erstellen Sie ein Node.js-Modul mit dem Dateinamen sns_deletetopic.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, das den TopicArn des zu löschenden Themas enthält, um es an die deleteTopic-Methode der AWS.SNS-Client-Klasse zu übergeben. Um die deleteTopic Methode aufzurufen, erstellen Sie eine Zusage für den Aufruf eines Amazon SNS-Serviceobjekts, indem Sie das Parameterobjekt übergeben. Verarbeiten Sie anschließend die response im Promise-Callback.

// 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); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

node sns_deletetopic.js

Diesen Beispielcode finden Sie hier auf. GitHub

Abrufen von Themenattributen

Verwenden Sie in diesem Beispiel ein Modul Node.js, um Attribute eines Amazon SNS SNS-Themas abzurufen. Erstellen Sie ein Node.js-Modul mit dem Dateinamen sns_gettopicattributes.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, das den TopicArn eines zu löschenden Themas enthält, um es an die getTopicAttributes-Methode der AWS.SNS-Client-Klasse zu übergeben. Um die getTopicAttributes Methode aufzurufen, erstellen Sie eine Zusage für den Aufruf eines Amazon SNS-Serviceobjekts, indem Sie das Parameterobjekt übergeben. Verarbeiten Sie anschließend die response im Promise-Callback.

// 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); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

node sns_gettopicattributes.js

Diesen Beispielcode finden Sie hier auf. GitHub

Festlegen von Themenattributen

Verwenden Sie in diesem Beispiel ein Modul Node.js, um die veränderbaren Attribute eines Amazon SNS SNS-Themas festzulegen. Erstellen Sie ein Node.js-Modul mit dem Dateinamen sns_settopicattributes.js. Konfigurieren Sie das SDK wie zuvor dargestellt.

Erstellen Sie ein Objekt, das die Parameter für eine Aktualisierung des Attributs enthält. Dazu gehören der TopicArn des Themas, dessen Attribute Sie festlegen möchten, der Name des festzulegenden Attributs und der neue Wert für dieses Attribut. Sie können nur die Attribute Policy, DisplayName und DeliveryPolicy festlegen. Übergeben Sie die Parameter an die setTopicAttributes-Methode der Client-Klasse AWS.SNS. Um die setTopicAttributes Methode aufzurufen, erstellen Sie eine Zusage für den Aufruf eines Amazon SNS-Serviceobjekts, indem Sie das Parameterobjekt übergeben. Verarbeiten Sie anschließend die response im Promise-Callback.

// 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); });

Um das Beispiel auszuführen, geben Sie Folgendes in der Befehlszeile ein.

node sns_settopicattributes.js

Diesen Beispielcode finden Sie hier auf. GitHub