Uso de filas no Amazon SQS - AWS SDK for JavaScript

Anunciamos o próximo fim do suporte para o AWS SDK for JavaScript v2. Recomendamos migrar para o AWS SDK for JavaScript v3. Para saber as datas e receber detalhes adicionais e informações sobre como migrar, consulte o anúncio vinculado.

Uso de filas no Amazon SQS

JavaScript code example that applies to Node.js execution

Este exemplo de código Node.js mostra:

  • Como obter uma lista das filas de mensagens

  • Como obter a URL de uma fila específica

  • Como criar e excluir filas

Sobre o exemplo

Neste exemplo, é usada uma série de módulos do Node.js para trabalhar com filas. Os módulos do Node.js usam o SDK para JavaScript para permitir que as filas chamem os seguintes métodos da classe de cliente AWS.SQS:

Para obter mais informações sobre as mensagens do Amazon SQS, consulte como Como as filas funcionam no Guia do desenvolvedor do Amazon Simple Queue Service.

Tarefas de pré-requisito

Para configurar e executar este exemplo, você deve primeiro concluir estas tarefas:

Listar suas filas

Crie um módulo do Node.js com o nome de arquivo sqs_listqueues.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o Amazon SQS, crie um objeto de serviço do AWS.SQS. Crie um objeto JSON contendo os parâmetros necessários para listar as filas, que é um objeto vazio, por padrão. Chame o método listQueues para recuperar a lista de filas. O retorno de chamada retorna os URLs de todas as filas.

// 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 executar o exemplo, digite o seguinte na linha de comando.

node sqs_listqueues.js

Este código de exemplo pode ser encontrado aqui no GitHub.

Criação de uma fila

Crie um módulo do Node.js com o nome de arquivo sqs_createqueue.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o Amazon SQS, crie um objeto de serviço do AWS.SQS. Crie um objeto JSON contendo os parâmetros necessários para listar as filas, que deve incluir o nome para a fila criada. Os parâmetros também podem conter atributos para a fila, como número de segundos para os quais a entrega de mensagens está atrasada ou o número de segundos para manter uma mensagem recebida. Chame o método createQueue. O retorno de chamada retorna o URL da fila criada.

// 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 executar o exemplo, digite o seguinte na linha de comando.

node sqs_createqueue.js

Este código de exemplo pode ser encontrado aqui no GitHub.

Obter o URL de uma fila

Crie um módulo do Node.js com o nome de arquivo sqs_getqueueurl.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o Amazon SQS, crie um objeto de serviço do AWS.SQS. Crie um objeto JSON contendo os parâmetros necessários para listar as filas, que deve incluir o nome para a fila cujo URL você quer. Chame o método getQueueUrl. O retorno de chamada retorna o URL da fila 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 executar o exemplo, digite o seguinte na linha de comando.

node sqs_getqueueurl.js

Este código de exemplo pode ser encontrado aqui no GitHub.

Exclusão de uma fila

Crie um módulo do Node.js com o nome de arquivo sqs_deletequeue.js. Não se esqueça de configurar o SDK conforme mostrado anteriormente. Para acessar o Amazon SQS, crie um objeto de serviço do AWS.SQS. Crie um objeto JSON contendo os parâmetros necessários para excluir uma fila, que consiste no URL da fila que você deseja excluir. Chame o 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 executar o exemplo, digite o seguinte na linha de comando.

node sqs_deletequeue.js

Este código de exemplo pode ser encontrado aqui no GitHub.