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

Simple Message Queue (formerly MNS):BatchDeleteMessage

最終更新日:Aug 22, 2026

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

認可

デフォルトでは、Alibaba Cloud アカウントのみがこの操作を呼び出すことができます。RAM ユーザーは、関連する権限を付与された後にのみ、この操作を呼び出すことができます。次の表に、この操作の権限情報を示します。詳細については、「権限ポリシーと例」をご参照ください。

項目

API オペレーション

BatchDeleteMessage

アクション

mns:BatchDeleteMessage

リソース

acs:mns:$region:$accountid:/queues/$queueName/messages

説明

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

効率を高めるため、この API をBatchReceiveMessage API と組み合わせて使用することを推奨します。複数のメッセージを削除するリクエストには複数のサブリクエストが含まれ、一部のサブリクエストが失敗する場合があります。すべてのサブリクエストが成功した場合にのみ、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 400
        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 ステータスコードエラーメッセージ説明
QueueNotExist404The queue name you provided does not exist.指定されたキューは存在しません。リクエスト URI のキュー名を確認してください。
InvalidArgument400The value of Element should between Low and High seconds/bytes.パラメーター値が有効範囲外です。リクエストパラメーターが許容される値の範囲内にあるか確認してください。
ReceiptHandleError400The receipt handle you provided is not valid.受信ハンドルは、NextVisibleTime を過ぎたか、古いハンドルが使用されたため、期限切れになっています。メッセージを再度消費して、新しい受信ハンドルを取得してください。