すべてのプロダクト
Search
ドキュメントセンター

Simple Message Queue (formerly MNS):BatchDeleteMessage

最終更新日:Jan 13, 2025

キューから複数のメッセージを削除します。

名前
APIBatchDeleteMessage
アクションmns:BatchDeleteMessage
リソースacs:mns:$region:$accountid:/queues/$queueName/messages

説明

この操作を呼び出して、キューから複数のメッセージを削除できます。一度に最大 16 件のメッセージを削除できます。削除する各メッセージの受信ハンドルをリクエストに含める必要があります。

効率を向上させるために、BatchReceiveMessage 操作と BatchDeleteMessage 操作を呼び出して、複数のメッセージを一度に受信および削除できます。複数のメッセージを削除するために使用されるリクエストには複数のサブリクエストが含まれており、一部のサブリクエストは失敗する可能性があります。すべてのサブリクエストが成功した場合にのみ、HTTP ステータスコード 204 が返されます。一部のサブリクエストが失敗した場合は、各レスポンスのエラーメッセージを確認する必要があります。

リクエスト

リクエストは次の部分で構成されます。

  • リクエスト行

    DELETE /queues/$queueName/messages HTTP/1.1

  • 操作固有のリクエストヘッダー

    なし。

  • リクエストボディ

    リクエストボディは XML 形式です。削除する各メッセージの受信ハンドルをリクエストに含める必要があります。

レスポンス

レスポンスは次の部分で構成されます。

  • HTTP ステータスコード

    HTTP/1.1 204 NoContent

  • 操作固有のレスポンスヘッダー

    なし。

  • レスポンスボディ

    なし。

リクエストの例

DELETE  /queues/$queueName/messages 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****

<? xml version="1.0" encoding="UTF-8"? >
<ReceiptHandles xmlns="http://mns.aliyuncs.com/doc/v1/">
    <ReceiptHandle>1-ODU4OTkzNDU5My0xNDM1MTk3NjAwLTItNg==</ReceiptHandle>
    <ReceiptHandle>1-ODU4OTkzNDU5NC0xNDM1MTk3NjAwLTItNg==</ReceiptHandle>
    <ReceiptHandle>1-ODU4OTkzNDU5NS0xNDM1MTk3NjAwLTItNg==</ReceiptHandle>
</ReceiptHandles>            

レスポンスの例

  • すべてのメッセージが削除された場合の成功レスポンスの例
        HTTP/1.1 204 No Content
        x-mns-request-id:512B2A634403E52B1956****
        x-mns-version: 2015-06-06                  
  • 一部のメッセージの削除に失敗した場合のレスポンスの例
        HTTP/1.1 404
        Connection:close
        Content-Type=text/xml;charset=utf-8
        Content-Length:500
        x-mns-request-id:512B2A634403E52B1956****
        x-mns-version: 2015-06-06
    
        <? xml version="1.0" encoding="UTF-8"? >
        <Errors xmlns="http://mns.aliyuncs.com/doc/v1/">
        <Error>
            <ErrorCode>MessageNotExist</ErrorCode>
            <ErrorMessage>Message not exist. </ErrorMessage>
            <ReceiptHandle>1-ODU4OTkzNDU5My0xNDM1MTk3NjAwLTItNg==</ReceiptHandle>
        </Error>
        <Error>
            <ErrorCode>MessageNotExist</ErrorCode>
            <ErrorMessage>Message not exist. </ErrorMessage>
            <ReceiptHandle>1-ODU4OTkzNDU5NC0xNDM1MTk3NjAwLTItNg==</ReceiptHandle>
        </Error>
        </Errors>                    

特別なエラー

エラーコードエラーメッセージHTTP ステータスコード
QueueNotExist指定したキュー名は存在しません。404
InvalidArgument要素の値は Low ~ High 秒/バイトの範囲内である必要があります。400
ReceiptHandleError指定した受信ハンドルは無効です。400