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

Simple Message Queue (formerly MNS):BatchPeekMessage

最終更新日:Jan 13, 2025

複数のメッセージを照会します。

認証

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

項目

API操作

BatchPeekMessage

アクション

mns:BatchPeekMessage

リソース

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

説明

この操作を呼び出すことで、一度に最大 16 件のメッセージを照会できます。

BatchReceiveMessage操作とは異なり、BatchPeekMessage操作はメッセージのステータスを変更しません。 BatchPeekMessage操作を呼び出してメッセージを表示した後も、メッセージはアクティブ状態のままなので、引き続き表示または消費できます。ただし、BatchReceiveMessage操作を呼び出してメッセージを受信すると、メッセージは非アクティブ状態になり、/* VisibilityTimeout */ パラメーターで指定された期間内は表示または消費できません。

リクエスト

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

  • リクエスト行

    GET /queues/$queueName/messages?peekonly=true&numOfMessages=16 HTTP/1.1

  • 操作固有のURIパラメーター

    パラメーター

    タイプ

    必須

    説明

    peekonly

    ブール値

    はい

    true

    このリクエストがキュー内のメッセージを表示するためにのみ使用され、メッセージのステータスは変更されないことを指定します。値は true に固定されています。

    numOfMessages

    整数

    いいえ

    16

    一度に表示できるメッセージの最大数。

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

    なし。

  • リクエストボディ

    なし。

レスポンス

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

  • HTTPステータスコード

    HTTP/1.1 200 OK

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

    なし。

  • レスポンスボディ

    レスポンスボディはXML形式です。複数のメッセージのボディとパラメーターが返されます。

    パラメーター

    タイプ

    説明

    MessageId

    文字列

    D6D5F7C9C12D14A4-1-14D953EFC72-20000****

    メッセージのID。メッセージ ID は、キュー内で一意です。

    MessageBody

    文字列

    This is a test message.

    メッセージの本文。

    MessageBodyMD5

    文字列

    F9360F391579E71CA77BC5D50242****

    メッセージ本文のMD5ハッシュ。

    EnqueueTime

    Long

    1250700979248

    メッセージがキューに送信された時刻。この値は、エポックタイム 1970年1月1日 00:00:00 UTC から経過したミリ秒数を表すUNIXタイムスタンプです。

    FirstDequeueTime

    Long

    1250700979348

    メッセージが最初に消費された時刻。この値は、エポックタイム 1970年1月1日 00:00:00 UTC から経過したミリ秒数を表すUNIXタイムスタンプです。 /* DequeueCount */ パラメーターの値が 0 の場合、FirstDequeueTimeパラメーターの値はEnqueueTimeパラメーターの値と同じです。

    DequeueCount

    整数

    5

    メッセージが消費された合計回数。

リクエストの例

GET  /queues/$queueName/messages?peekonly=true&numOfMessages=16 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
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"?>
<Messages xmlns="http://mns.aliyuncs.com/doc/v1/">
<Message>
    <MessageId>D6D5F7C9C12D14A4-1-14D953EFC72-20000****</MessageId>
    <MessageBodyMD5>F9360F391579E71CA77BC5D50242****</MessageBodyMD5>
    <MessageBody>This is a test message.</MessageBody>
    <EnqueueTime>1250700979248</EnqueueTime>
    <FirstDequeueTime>1250700979348</FirstDequeueTime >
    <DequeueCount>5</DequeueCount>
    <Priority>8<Priority>
</Message>
<Message>
    <MessageId>D6D5F7C9C12D14A4-1-14D953EFC72-20000****</MessageId>
    <MessageBodyMD5>F9360F391579E71CA77BC5D50242****</MessageBodyMD5>
    <MessageBody>This is a test message.</MessageBody>
    <EnqueueTime>1250700979250</EnqueueTime>
    <FirstDequeueTime>1250700979352</FirstDequeueTime >
    <DequeueCount>5</DequeueCount>
    <Priority>8<Priority>
</Message>
</Messages>            

エラーコード

エラーコード

エラーメッセージ

HTTPステータスコード

説明

QueueNotExist

The queue name you provided is not exist.

404

指定されたキューが存在しないために返されるエラーメッセージです。キューを作成してください。

MessageNotExist

Message not exist.

404

キューに表示可能なメッセージが存在しないために返されるエラーメッセージです。