

AWS SDK for JavaScript v2가 지원 종료에 도달했습니다. [AWS SDK for JavaScript v3](https://docs.aws.amazon.com//sdk-for-javascript/v3/developer-guide/)로 마이그레이션하실 것을 권장합니다. 마이그레이션 방법에 대한 자세한 내용은 해당 [공지 사항](https://aws.amazon.com/blogs//developer/announcing-end-of-support-for-aws-sdk-for-javascript-v2/)을 참조하세요.

# Amazon SQS에서 대기열 사용
<a name="sqs-examples-using-queues"></a>

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

**이 Node.js 코드 예제는 다음을 보여 줍니다.**
+ 모든 메시지 대기열의 목록을 가져오는 방법
+ 특정 대기열의 URL을 획득하는 방법
+ 대기열을 생성하고 삭제하는 방법

## 예제 소개
<a name="sqs-examples-using-queues-scenario"></a>

이 예제에서는 일련의 Node.js 모듈을 사용하여 대기열을 작업합니다. Node.js 모듈은 SDK for JavaScript로 `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)

Amazon SQS 메시지에 대한 자세한 정보는 *Amazon Simple Queue Service 개발자 안내서*의 [대기열의 작동 방식](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-how-it-works.html)을 참조하세요.

## 사전 필수 작업
<a name="sqs-examples-using-queues-prerequisites"></a>

이 예제를 설정하고 실행하려면 먼저 이러한 작업들을 완료해야 합니다.
+ Node.js를 설치합니다. Node.js 설치에 대한 자세한 내용은 [Node.js 웹 사이트](https://nodejs.org)를 참조하세요.
+ 사용자 자격 증명을 사용하여 공유 구성 파일을 생성합니다. 공유 자격 증명 파일 제공에 대한 자세한 내용은 [공유 인증 자격 증명 파일에서 Node.js에 인증 자격 증명 로드](loading-node-credentials-shared.md) 섹션을 참조하세요.

## 대기열 목록 표시
<a name="sqs-examples-using-queues-listing-queues"></a>

파일 이름이 `sqs_listqueues.js`인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성해야 합니다. Amazon SQS에 액세스하려면 `AWS.SQS` 서비스 객체를 생성합니다. 대기열 목록을 표시하는 데 필요한 파라미터를 포함하는 JSON 객체를 생성합니다. 이 객체는 기본적으로 비어 있는 객체입니다. `listQueues` 메서드를 호출하여 대기열 목록을 검색합니다. 콜백에서 모든 대기열의 URL이 반환됩니다.

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

예제를 실행하려면 명령줄에서 다음을 입력합니다.

```
node sqs_listqueues.js
```

이 샘플 코드는 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_listqueues.js)에서 찾을 수 있습니다.

## 대기열 만들기
<a name="sqs-examples-using-queues-create-queue"></a>

파일 이름이 `sqs_createqueue.js`인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성해야 합니다. Amazon SQS에 액세스하려면 `AWS.SQS` 서비스 객체를 생성합니다. 대기열 목록을 표시하는 데 필요한 파라미터를 포함하는 JSON 객체를 생성합니다. 이 객체에는 생성된 대기열의 이름이 포함되어야 합니다. 파라미터에는 메시지 전송이 지연되는 시간(초) 또는 수신한 메시지를 보관할 시간(초)과 같은 대기열의 속성도 포함될 수 있습니다. `createQueue` 메서드를 호출합니다. 콜백에서 생성된 대기열의 URL이 반환됩니다.

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

예제를 실행하려면 명령줄에서 다음을 입력합니다.

```
node sqs_createqueue.js
```

이 샘플 코드는 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_createqueue.js)에서 찾을 수 있습니다.

## 대기열의 URL 가져오기
<a name="sqs-examples-using-queues-get-queue-url"></a>

파일 이름이 `sqs_getqueueurl.js`인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성해야 합니다. Amazon SQS에 액세스하려면 `AWS.SQS` 서비스 객체를 생성합니다. 대기열 목록을 표시하는 데 필요한 파라미터를 포함하는 JSON 객체를 생성합니다. 이 객체에는 URL을 가져올 대기열의 이름이 포함되어야 합니다. `getQueueUrl` 메서드를 호출합니다. 콜백에서 지정된 대기열의 URL이 반환됩니다.

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

예제를 실행하려면 명령줄에서 다음을 입력합니다.

```
node sqs_getqueueurl.js
```

이 샘플 코드는 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_getqueueurl.js)에서 찾을 수 있습니다.

## 대기열 삭제
<a name="sqs-examples-using-queues-delete-queue"></a>

파일 이름이 `sqs_deletequeue.js`인 Node.js 모듈을 생성합니다. 위와 같이 SDK를 구성해야 합니다. Amazon SQS에 액세스하려면 `AWS.SQS` 서비스 객체를 생성합니다. 대기열을 삭제하는 데 필요한 파라미터를 포함하는 JSON 객체를 생성합니다. 이 객체는 삭제하려는 대기열의 URL로 구성됩니다. `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);
  }
});
```

예제를 실행하려면 명령줄에서 다음을 입력합니다.

```
node sqs_deletequeue.js
```

이 샘플 코드는 [GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/javascript/example_code/sqs/sqs_deletequeue.js)에서 찾을 수 있습니다.