CreateQueue
説明
このインターフェイスは、新しいメッセージキューを作成するために使用します。
メッセージキューの名前は、256 文字以内の文字列です。先頭はアルファベットで、それ以外にはアルファベット、数字、ハイフン (-) を使用できます。
リクエスト
リクエストには、主に次の部分があります。
リクエスト行
PUT /queues/$queueName HTTP/1.1
特別なリクエストヘッダー
なし。パブリックリクエストヘッダーを参照してください。
リクエスト本文
リクエスト本文は、XML 形式です。XML には、作成されたキューの属性が含まれています。これらの属性はすべて任意の属性です。
パラメーター名 | 説明 | パラメーター値 |
---|---|---|
DelaySeconds | キューに送信されたすべてのメッセージを取得できるようになるまでの遅延時間 (秒)。 | 0 から 604800 秒 (7 日間) までの整数。デフォルト値は 0。 |
MaximumMessageSize | キューに送信されるメッセージの本文の最大長 (バイト)。 | 1024 (1 K) から 65536 (64 K) までの整数。デフォルト値は 65536 (64K)。 |
MessageRetentionPeriod | キュー内でのメッセージの最大ライフタイム (秒)。このパラメーターによって指定された時間が経過すると、メッセージは取得済みかどうかに関係なく削除されます。 | 60 (1 分) から 1296000 (15 日) までの整数。デフォルト値は 345600 (4 日)。 |
VisibilityTimeout | キューから取得された後、メッセージが [Inactive] ステータスのままになる時間 (秒)。 | 1 から 43200 (12 時間) までの整数。デフォルト値は 30 (秒)。 |
PollingWaitSeconds | キュー内にメッセージが 1 つもないときの ReceiveMessage リクエストの最大待ち時間 (秒)。 | 0 から 30 秒までの整数。デフォルト値は 0 (秒)。 |
注意:
キューに対して PollingWaitSeconds を設定すると、キュー内にメッセージがない場合、そのキューへのすべての ReceiveMessage リクエストは、デフォルトで Pollingwait ステータスになります。PollingWaitSeconds 期間の全体を通じてメッセージがなければ、MessageNotExist が返されます。PollingWaitSeconds 期間の間に新しいメッセージがキューに入ると、対応する ReceiveMessage リクエストが起動され、応答が返されます。
応答
返されるメッセージには、戻りステータス行、HTTP ヘッダー、メッセージ本文の 3 つの部分があります。
- HTTP ステータスコード
HTTP/1.1 201 Created
同じオーナーに関して、メッセージキューの名前が重複することは許可されません。作成されたメッセージキューの名前が既存のメッセージキューと同じ場合、作成されたメッセージキューの属性が既存のメッセージキューの属性と同じであればエラー 204 (No Content)、そうでないときはエラー 409 (Conflict) が返されます。
- 特別な応答ヘッダー
パラメーター名 | 説明 |
---|---|
Location | 作成された QueueURL は以下の形式で返されます。http://$AccountId.mns.<Region>.aliyuncs.com/queues/$queueName |
応答本文
なし。
特殊なエラー
エラーコード | エラーメッセージ | ステータスコード |
---|---|---|
QueueAlreadyExist | 作成しようとしたキューは既に存在します。 | 409 |
InvalidArgument | Element の値は、Low と High の間の秒数またはバイト数にする必要があります。 | 400 |
リクエストの例:
PUT /queues/$queueName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization:MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
<?xml version=”1.0” enconding=”UTF-8”?>
<Queue xmlns=”http://mns.aliyuncs.com/doc/v1/”>
<VisibilityTimeout>60</VisibilityTimeout>
<MaximumMessageSize>65536</MaximumMessageSize>
<MessageRetentionPeriod>1209600</MessageRetentionPeriod>
</Queue>
戻り値の例:
HTTP/1.1 201 Created
x-mns-request-id: 512B2A634403E52B1956133E
x-mns-version: 2015-06-06
Location: http://$AccountId.mns-cn-hangzhou.aliyuncs.com/$queueName
SetQueueAttributes
説明
このインターフェイスは、メッセージキューの属性を変更するために使用します。
リクエスト
リクエストには、主に次の部分があります。
リクエスト行
PUT /$queueName?metaoverride=true HTTP/1.1
URI パラメーター
metaoverride=true: メッセージキューの属性は変更されます。
特別なリクエストヘッダー
なし。パブリックリクエストヘッダーを参照してください。
リクエスト本文
リクエスト本文は、XML 形式です。XML には、作成されたキューの属性が含まれています。これらの属性はすべて任意の属性です。
パラメーター名 | 説明 | パラメーター値 |
---|---|---|
DelaySeconds | キューに送信されたすべてのメッセージを取得できるようになるまでの遅延時間 (秒)。 | 0 から 604800 秒 (7 日間) までの整数。デフォルト値は 0。 |
MaximumMessageSize | キューに送信されるメッセージの本文の最大長 (バイト)。 | 1024 (1 K) から 65536 (64 K) までの整数。デフォルト値は 65536 (64K)。 |
MessageRetentionPeriod | キュー内でのメッセージの最大ライフタイム (秒)。このパラメーターによって指定された時間が経過すると、メッセージは取得済みかどうかに関係なく削除されます。 | 60 (1 分) から 1296000 (15 日) までの整数。デフォルト値は 345600 (4 日)。 |
VisibilityTimeout | キューから取得された後、メッセージが [Inactive] ステータスのままになる時間 (秒)。 | 1 から 43200 (12 時間) までの整数。デフォルト値は 30 (秒)。 |
PollingWaitSeconds | キュー内にメッセージが 1 つもないときの ReceiveMessage リクエストの最大待ち時間 (秒)。 | 0 から 30 秒までの整数。デフォルト値は 0 (秒)。 |
応答
返されるメッセージには、戻りステータス行、HTTP ヘッダー、メッセージ本文の 3 つの部分があります。
HTTP ステータスコード
HTTP/1.1 204 No Content
特別な応答ヘッダー
なし。「パブリックリターンヘッダー」を参照してください。
応答本文
なし。
特殊なエラー
エラーコード | エラーメッセージ | ステータスコード |
---|---|---|
InvalidArgument | Element の値は、Low と High の間の秒数またはバイト数にする必要があります。 | 400 |
QueueNotExist | 指定された名前のキューは存在しません。 | 404 |
リクエストの例:
PUT /queues/$queueName?Metaoverride=true HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
<?xml version="1.0" encoding="UTF-8" ?>
<Queue xmlns=”http://mns.aliyuncs.com/doc/v1/”>
<VisibilityTimeout >60</VisibilityTimeout>
<MaximumMessageSize>1024</MaximumMessageSize>
<MessageRetentionPeriod>120</MessageRetentionPeriod>
<DelaySeconds>30</DelaySeconds>
</Queue>
戻り値の例:
HTTP/1.1 204 No Content
x-mns-request-id:512B2A634403E52B1956133E
x-mns-version:2015-06-06
GetQueueAttributes
説明
このインターフェイスは、作成されたメッセージキューの属性を取得するために使用します。返される属性は、メッセージキューの作成時に設定される設定可能な属性、メッセージキューの作成日時、メッセージキュー属性の最終変更日時、メッセージキュー内のメッセージの種類ごとの数 (概数) などです。
リクエスト
リクエストには、主に次の部分があります。
リクエスト行
GET /$queueName HTTP/1.1
特別なリクエストヘッダー
なし。パブリックリクエストヘッダーを参照してください。
リクエスト本文
なし。
応答
返されるメッセージには、戻りステータス行、HTTP ヘッダー、メッセージ本文の 3 つの部分があります。
HTTP ステータスコード
HTTP/1.1 200OK
特別な応答ヘッダー
なし。「パブリックリターンヘッダー」を参照してください。
応答本文
結果は XML 形式で返されます。形式は次のとおりです。
<Queue>Attribute Element List</Queue>
属性要素のリストの内容は次のとおりです
パラメーター名 | 説明 |
---|---|
QueueName | キュー名 |
CreateTime | キュー作成日時を 1970 年 1 月 1 日 0:00 から現在までの秒単位の経過時間で表した値。 |
LastModifyTime | キュー属性の最終変更日時を 1970 年 1 月 1 日 0:00 から現在までの秒単位の経過時間で表した値。 |
DelaySeconds | キューに送信されたすべてのメッセージを取得できるようになるまでの遅延時間 (秒)。 |
MaximumMessageSize | キューに送信されるメッセージの本文の最大長 (バイト)。 |
MessageRetentionPeriod | キュー内でのメッセージの最大ライフタイム (秒)。このパラメーターによって指定された時間が経過すると、メッセージは取得済みかどうかに関係なく削除されます。 |
PollingWaitSeconds | キュー内にメッセージが 1 つもないときの ReceiveMessage リクエストの最大待ち時間 (秒)。 |
Activemessages | キュー内の [Active] ステータスのメッセージの総数 (概数)。 |
InactiveMessages | キュー内の [Inactive] ステータスのメッセージの総数 (概数)。 |
DelayMessages | キュー内の [Delayed] ステータスのメッセージの総数 (概数)。 |
特殊なエラー
エラーコード | エラーメッセージ | ステータスコード |
---|---|---|
QueueNotExist | 指定された名前のキューは存在しません。 | 404 |
リクエストの例:
GET /$queueName HTTP/1.1
Host: $AccountId.mns-cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2014-07-08
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
戻り値の例:
HTTP/1.1 200 OK
Connection:close
Content-Type=text/xml;charset=utf-8
Content-Length:145
x-mns-request-id:512B2A634403E52B1956133E
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="UTF-8"?>
<Queue xmlns=http://mns.aliyuncs.com/doc/v1/”>
<QueueName>$queueName </QueueName ><!—The actual Queue Name is returned ->
<CreateTime>1250700999</CreateTime >
<LastModifyTime>1250700999</LastModifyTime>
<VisibilityTimeout>60</VisibilityTimeout >
<MaximumMessageSize>65536</MaximumMessageSize>
<MessageRetentionPeriod>65536</MessageRetentionPeriod>
<DelaySeconds>30</DelaySecond>
<PollingWaitSeconds>0</PollingWaitSeconds>
<InactiveMessages>0</InactiveMessages>
<ActiveMessages>20</ActiveMessages>
< DelayMessages >0</ DelayMessages>
</Queue>
DeleteQueue
説明
このインターフェイスは、作成済みのメッセージキューを削除するために使用します。
注意:
このインターフェイスを使用する際には注意してください。メッセージキューが正常に削除されると、キュー内のすべてのメッセージは復元できません。
リクエスト
リクエストには、主に次の部分があります。
リクエスト行
DELETE /$queueName HTTP/1.1
特別なリクエストヘッダー
なし。パブリックリクエストヘッダーを参照してください。
リクエスト本文
なし。
応答
返されるメッセージには、戻りステータス行、HTTP ヘッダー、メッセージ本文の 3 つの部分があります。
HTTP ステータスコード
HTTP/1.1 204 No Content
特別な応答ヘッダー
なし。「パブリックリターンヘッダー」を参照してください。
応答本文
なし。
特殊なエラー
この操作には特殊なエラーはなく、関係するエラーは主に権限検証エラーとパラメーター設定エラーです。詳細については、エラー応答コードを参照してください。
リクエストの例:
DELETE /queues/$queueName HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
戻り値の例:
HTTP/1.1 204 NoContent
x-mns-request-id: 512B2A634403E52B1956133E
x-mns-version: 2015-06-06
ListQueue
説明
このインターフェイスは、AccountId の下のメッセージキューをリストするために使用します。データはページ単位で取得されます。QueueURL 属性だけが返されます。
必要であれば、GetQueueAttributes インターフェイス (「GetQueueAttributes インターフェイス」を参照してください) を使用して他のメッセージキュー属性を取得します。
指定したメッセージキューのリストを取得するには、このインターフェイスを呼び出すときに x-mns-prefix パラメーターを指定します。指定されたプレフィックスを持つすべてのメッセージキューが返されます。
ヒント:このリクエストに対して返されるメッセージキューの総数が x-mns-ret-number 値を超える場合、返された XML 結果に含まれる NextMarker は次のページの開始位置を示しており、この値を次のリクエストの x-mns-marker パラメーターに割り当てることで次の結果ページを表示できます。
リクエスト
リクエストには、主に次の部分があります。
リクエスト行
GET / HTTP/1.1
特別なリクエストヘッダー
パラメーター名 | 説明 | 必須かどうか |
---|---|---|
x-mns-marker | 次のページの開始位置。通常は、前のページで返される NextMarker から取得されます。 | 任意 |
x-mns-ret-number | 1 回のリクエストで返される結果の最大数。1 から 1000 までの整数。デフォルト値は 1000。 | 任意 |
x-mns-prefix | このプレフィックスで始まる queueNames を検索します。 | 任意 |
他のリクエストヘッダーについては、パブリックリクエストヘッダーを参照してください。
リクエスト本文
なし。
応答
返されるメッセージには、戻りステータス行、HTTP ヘッダー、メッセージ本文の 3 つの部分があります。
HTTP ステータスコード
HTTP/1.1 200 OK
特別な応答ヘッダー
なし。「パブリックリターンヘッダー」を参照してください。
応答本文
結果は XML 形式で返されます。最上位要素である Queues には複数の Queue 要素が含まれており、Queue 要素には QueueURL 要素が含まれています。QueueURL は、作成されたキューの URL アドレスを示しています。返された結果の数が x-mns-ret-number 値を超える場合、NextMarker に含まれる要素は次のページの開始位置を示しています。
特殊なエラー
この操作には特殊なエラーはなく、関係するエラーは主に権限検証エラーとパラメーター設定エラーです。詳細については、MNS エラー応答コードを参照してください。
リクエストの例:
GET /queues HTTP/1.1
x-mns-marker: xxxx
x-mns-ret-number:2
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 08 Mar 2012 12:00:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXAMPLE=
戻り値の例:
HTTP/1.1 200OK
x-mns-request-id:512B2A634403E52B1956133E
x-mns-version: 2015-06-06
<?xml version="1.0" encoding=”UTF-8” ?>
<Queuesxmlns=”http://mns.aliyuncs.com/doc/v1/”>
<Queue>
< QueueURL>
http:// $AccountId.mns.cn-hangzhou.aliyuncs.com/queues/queueName
</ QueueURL>
</Queue>
<Queue>
< QueueURL>
http:// $AccountId.mns.cn-hangzhou.aliyuncs.com/queues/queueName1
</ QueueURL>
</Queue>
<NextMarker> Base64 Encoded Result </NextMarker>
</Queues>