Anunciamos
Publicación de mensajes en Amazon SNS
Este ejemplo de código de Node.js muestra:
-
Cómo publicar mensajes en un tema de Amazon SNS.
El escenario
En este ejemplo va a utilizar una serie de módulos de Node.js para publicar mensajes de Amazon SNS en puntos de conexión de temas, correos electrónicos o números de teléfono. Los módulos de Node.js usan el SDK para JavaScript para enviar mensajes mediante este método de la clase de cliente de Amazon SNS:
Tareas previas necesarias
Para configurar y ejecutar este ejemplo, primero debe completar estas tareas:
-
Instale Node.js. Para obtener más información acerca de la instalación de Node.js consulte el sitio web de Node.js
. -
Cree un archivo de configuraciones compartidas con sus credenciales de usuario. Para obtener más información acerca de cómo proporcionar un archivo JSON de credenciales, consulte Carga de credenciales en Node.js desde el archivo de credenciales compartidas.
Publicación de un mensaje en un tema de Amazon SNS
En este ejemplo, utilice un módulo de Node.js para publicar un mensaje en un tema de Amazon SNS. Cree un módulo de Node.js con el nombre de archivo sns_publishtotopic.js
. Configure el SDK como le hemos mostrado anteriormente.
Cree un objeto que contenga los parámetros para publicar un mensaje, como el texto del mensaje y el ARN del tema de Amazon SNS. Para obtener información detallada sobre los atributos de SMS, consulte SetSMSAttributes.
Transfiera los parámetros al método publish
de la clase de cliente de Amazon SNS. Cree una promesa para invocar un objeto de servicio de Amazon SNS transfiriendo el objeto de parámetros. Luego gestione la respuesta en la devolución de llamada de la promesa.
// Load the AWS SDK for Node.js var AWS = require("aws-sdk"); // Set region AWS.config.update({ region: "REGION" }); // Create publish parameters var params = { Message: "MESSAGE_TEXT" /* required */, TopicArn: "TOPIC_ARN", }; // Create promise and SNS service object var publishTextPromise = new AWS.SNS({ apiVersion: "2010-03-31" }) .publish(params) .promise(); // Handle promise's fulfilled/rejected states publishTextPromise .then(function (data) { console.log( `Message ${params.Message} sent to the topic ${params.TopicArn}` ); console.log("MessageID is " + data.MessageId); }) .catch(function (err) { console.error(err, err.stack); });
Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.
node sns_publishtotopic.js
Este código de ejemplo se puede encontrar aquí en GitHub