

O AWS SDK para JavaScript v2 chegou ao fim do suporte. Recomendamos migrar para o [AWS SDK para JavaScript v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/). Para ver detalhes e informações sobre como migrar, consulte este [anúncio](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/).

# Uso de filas no Amazon SQS
<a name="sqs-examples-using-queues"></a>

![\[JavaScript code example that applies to Node.js execution\]](http://docs.aws.amazon.com/pt_br/sdk-for-javascript/v2/developer-guide/images/nodeicon.png)

**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
<a name="sqs-examples-using-queues-scenario"></a>

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`:
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#listQueues-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#listQueues-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#createQueue-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#createQueue-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#getQueueUrl-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#getQueueUrl-property)
+ [https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#deleteQueue-property](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/SQS.html#deleteQueue-property)

Para obter mais informações sobre as mensagens do Amazon SQS, consulte como [Como as filas funcionam](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-how-it-works.html) no *Guia do desenvolvedor do Amazon Simple Queue Service*.

## Tarefas de pré-requisito
<a name="sqs-examples-using-queues-prerequisites"></a>

Para configurar e executar este exemplo, você deve primeiro concluir estas tarefas:
+ Instale o Node.js. Para obter mais informações sobre como instalar Node.js, consulte o [website de Node.js](https://nodejs.org).
+ Crie um arquivo de configurações compartilhado com as credenciais de usuário. Para obter mais informações sobre como fornecer um arquivo de credenciais compartilhadas, consulte [Carregar credenciais em Node.js do arquivo de credenciais compartilhado](loading-node-credentials-shared.md).

## Listar suas filas
<a name="sqs-examples-using-queues-listing-queues"></a>

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](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_listqueues.js).

## Criação de uma fila
<a name="sqs-examples-using-queues-create-queue"></a>

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](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_createqueue.js).

## Obter o URL de uma fila
<a name="sqs-examples-using-queues-get-queue-url"></a>

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](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_getqueueurl.js).

## Exclusão de uma fila
<a name="sqs-examples-using-queues-delete-queue"></a>

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](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_deletequeue.js).