LaAWS SDK for JavaScript versión 3 (v3) es una reescritura de la versión 2 con algunas funciones nuevas y excelentes, incluida la arquitectura modular. Para obtener más información, consulte la Guía para desarrolladores de la versiónAWS SDK for JavaScript 3.
Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Uso de colas en Amazon SQS
Este ejemplo de código de Node.js muestra:
Cómo obtener una lista de todas sus colas de mensajes.
Cómo obtener la URL de una cola en concreto.
Cómo crear y eliminar colas.
Acerca del ejemplo
En este ejemplo, se utilizan una serie de módulos de Node.js para trabajar con colas. Los módulos de Node.js usan el SDK para JavaScript para permitir que las colas llamen a los métodos siguientes delAWS.SQS
clase de cliente:
Para obtener más información acerca de los mensajes de Amazon SQS, consulte.Cómo funcionan las colasen laGuía para desarrolladores de Amazon Simple Queue Service.
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 crear un archivo de credenciales compartidas, consulte Carga de credenciales en Node.js desde el archivo de credenciales compartidas.
Generación de una lista de sus colas
Cree un módulo de Node.js con el nombre de archivo sqs_listqueues.js
. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a Amazon SQS, cree unAWS.SQS
objeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para generar una lista de sus colas; de forma predeterminada es un objeto vacío. Llame al método listQueues
para recuperar la lista de colas. La devolución de llamada devuelve las direcciones URL de todas las colas.
// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create an SQS service object var sqs = new AWS.SQS({apiVersion: '2012-11-05'}); var params = {}; sqs.listQueues(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.QueueUrls); } });
Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.
node sqs_listqueues.js
Este código de muestra se puede encontrar aquí en GitHub
Creación de una cola
Cree un módulo de Node.js con el nombre de archivo sqs_createqueue.js
. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a Amazon SQS, cree unAWS.SQS
objeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para obtener una lista de las colas que incluya el nombre de la cola que se ha creado. Los parámetros también pueden contener atributos de la cola como, por ejemplo, cuántos segundos se tardará en entregar el mensaje o cuántos segundos se conservará un mensaje recibido. Llame al método createQueue
. La devolución de llamada devuelve la dirección URL de la cola creada.
// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create an SQS service object var sqs = new AWS.SQS({apiVersion: '2012-11-05'}); var params = { QueueName: 'SQS_QUEUE_NAME', Attributes: { 'DelaySeconds': '60', 'MessageRetentionPeriod': '86400' } }; sqs.createQueue(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.QueueUrl); } });
Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.
node sqs_createqueue.js
Este código de muestra se puede encontrar aquí en GitHub
Obtención de la dirección URL de una cola
Cree un módulo de Node.js con el nombre de archivo sqs_getqueueurl.js
. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a Amazon SQS, cree unAWS.SQS
objeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para obtener una lista de colas que incluya el nombre de la cola cuya dirección URL desea obtener. Llame al método getQueueUrl
. La devolución de llamada devuelve la dirección URL de la cola especificada.
// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create an SQS service object var sqs = new AWS.SQS({apiVersion: '2012-11-05'}); var params = { QueueName: 'SQS_QUEUE_NAME' }; sqs.getQueueUrl(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data.QueueUrl); } });
Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.
node sqs_getqueueurl.js
Este código de muestra se puede encontrar aquí en GitHub
Eliminación de una cola
Cree un módulo de Node.js con el nombre de archivo sqs_deletequeue.js
. Asegúrese de configurar el SDK tal y como se ha indicado anteriormente. Para acceder a Amazon SQS, cree unAWS.SQS
objeto de servicio. Cree un objeto JSON que contenga los parámetros necesarios para eliminar una cola y que conste de la dirección URL de la cola que desea eliminar. Llame al método deleteQueue
.
// Load the AWS SDK for Node.js var AWS = require('aws-sdk'); // Set the region AWS.config.update({region: 'REGION'}); // Create an SQS service object var sqs = new AWS.SQS({apiVersion: '2012-11-05'}); var params = { QueueUrl: 'SQS_QUEUE_URL' }; sqs.deleteQueue(params, function(err, data) { if (err) { console.log("Error", err); } else { console.log("Success", data); } });
Para ejecutar el ejemplo, escriba lo siguiente en la línea de comandos.
node sqs_deletequeue.js
Este código de muestra se puede encontrar aquí en GitHub