前提
ローカルのプログラムからAWSのリソースにアクセスするために、アクセスキーが必要です。持ってなければ、IAMユーザーを用意してアクセスキーを作成しておきます。
アクセスキーを作成したら、それを実行環境に認証情報として設定する必要があります。
ホームディレクトリ (Windowsなら C:\Users\ユーザー名
) に .aws
というフォルダが無ければ作成します。その中に credentials
というファイルを作成し、内容を以下の通りにします。
以下のリンクはAWS SDK for Javaのドキュメントですが、上記の内容は『AWS 認証情報の設定』の項と同じなので、参照してください。
開発用の AWS 認証情報とリージョンのセットアップ - AWS SDK for Java
なお、AWS-CLIをインストールして aws configure
しても、同じことができます。
AWS CLI の設定 - AWS Command Line Interface
サンプル
まず、サンプルを実行するためにカラのフォルダを作って、npm で aws-sdk をインストールしておきます。
このフォルダの中にサンプルのソースコードを example.js として設置し、node コマンドで実行します。
以下のサンプルは、東京リージョンでFIFOキューを使って作りました。
起動すると最長20秒間隔でロングポーリングし、メッセージがあれば10個ずつ取り出して表示したあと、キューから削除します。それを永遠に繰り返します。
「待機中」と表示されている間に当該キューに適当なメッセージを送ると、以下のような感じになります。
FIFOキューなので属性に MessageDeduplicationId がありますね。
飽きたら Ctrl+C で落としてください。
メモ
公式のAWS SDK for JavaScriptリファレンス。
Class: AWS.SQS ― AWS SDK for JavaScript
公式のロングポーリングのサンプル。
Enabling Long Polling in Amazon SQS - AWS SDK for JavaScript