非アクティブでコンシューム済みのメッセージが再びコンシューム可能になるまでの時間間隔を変更します。
認証
デフォルトでは、Alibaba Cloud アカウントのみがこの操作を呼び出すことができます。Resource Access Management (RAM) ユーザーは、関連する権限が付与された後にのみ、この操作を呼び出すことができます。次の表に、この操作の認証情報を示します。詳細については、「アクセス許可ポリシーと例」をご参照ください。
名前 | 値 |
API | ChangeMessageVisibility |
アクション | mns:ChangeMessageVisibility |
リソース | acs:mns:$region:$accountid:/queues/$queueName/messages |
リクエスト
リクエストは、次の部分で構成されます。
リクエスト行
PUT /queues/$queueName/messages?receiptHandle=<receiptHandle>&visibilityTimeout=<visibilitytimeout> HTTP/1.1URI パラメーター
パラメーター
タイプ
必須
例
説明
ReceiptHandle
String
はい
MbZj6wDWli+QEauMZc8ZRv37sIW2iJKq3M9Mx/KSbkJ0
メッセージが最後にコンシュームされたときに返された受信ハンドル。詳細については、「ReceiveMessage」をご参照ください。
VisibilityTimeout
Integer
はい
50
可視性タイムアウト期間(秒)。
値の範囲は 1 ~ 43200(1 秒~ 12 時間)です。
操作固有のリクエストヘッダー
なし。
リクエストボディ
なし。
レスポンス
レスポンスは、次の部分で構成されます。
HTTP ステータスコード
HTTP/1.1 200 OK操作固有のレスポンスヘッダー
なし。
レスポンスボディ
パラメーター
タイプ
例
説明
ReceiptHandle
String
TbZj6wDWli+9CEauMZc8ZRv37sIW2iJKq3M9Mx/TS1
VisibilityTimeoutパラメーターの値が変更された後に返される受信ハンドル。この受信ハンドルは、非アクティブなメッセージの削除と変更に使用でき、NextVisibleTimeパラメーターで指定された時間まで有効です。NextVisibleTime
Long
1250700979298000
メッセージを次にコンシュームできる時刻。この値は、エポックタイム(1970 年 1 月 1 日 00:00:00 UTC)からの経過ミリ秒数を表す UNIX タイムスタンプです。
例
リクエストの例
PUT /queues/$queueName/messages
?receiptHandle=MbZj6wDWli+QEauMZc8ZRv37sIW2iJKq3M9Mx/KSbkJ0&visibilityTimeout=50 HTTP/1.1
Host: $AccountId.mns.cn-hangzhou.aliyuncs.com
Date: Wed, 28 May 2012 22:32:00 GMT
x-mns-version: 2015-06-06
Authorization: MNS 15B4D3461F177624206A:xQE0diMbLRepdf3YB+FIEXA**** 成功レスポンスの例
HTTP/1.1 200 OK
x-mns-request-id:512B2A634403E52B1956****
x-mns-version: 2015-06-06
<?xml version="1.0" encoding="UTF-8"?>
<ChangeVisibility xmlns="http://mns.aliyuncs.com/doc/v1/">
<ReceiptHandle>TbZj6wDWli+9CEauMZc8ZRv37sIW2iJKq3M9Mx/TS1</ReceiptHandle >
<NextVisibleTime>1250700979298000</NextVisibleTime>
</ChangeVisibility> エラーコード
エラーコード | エラーメッセージ | HTTP ステータスコード | 説明 |
InvalidArgument | 要素の値は、Low ~ High 秒/ バイトである必要があります。 | 400 | パラメーターの値が無効なために返されるエラーメッセージ。指示に従って有効な値を指定する必要があります。 |
ReceiptHandleError | 指定された受信ハンドルは無効です。 | 400 | ReceiptHandle パラメーターが無効なために返されるエラーメッセージ。 |
QueueNotExist | 指定されたキュー名は存在しません。 | 404 | 指定されたキューが存在しないために返されるエラーメッセージ。キューを作成してください。 |
MessageNotExist | 指定された受信ハンドルは期限切れです。 | 404 | 非表示期間内にメッセージをコンシュームしておらず、メッセージの受信ハンドルが期限切れになっているために返されるエラーメッセージ。非表示期間内にメッセージをコンシュームするか、より長い非表示期間を指定してください。 |