Tous les produits
Search
Centre de documentation

Simple Message Queue (formerly MNS):BatchPeekMessage

Dernière mise à jour :Aug 10, 2026

Consulte plusieurs messages dans une file d'attente sans modifier leur état.

Description

L'opération BatchPeekMessage récupère jusqu'à 16 messages d'une file d'attente en une seule requête. Cette opération est non destructive : les messages conservent l'état Active et restent accessibles pour consultation ou réception par d'autres consommateurs.

Contrairement à [BatchReceiveMessage], qui fait passer les messages à l'état Inactive et les masque aux autres consommateurs pendant la durée définie par le paramètre VisibilityTimeout, BatchPeekMessage laisse les états des messages inchangés.

Autorisation

Par défaut, seuls les comptes Alibaba Cloud peuvent appeler cette opération. Les utilisateurs RAM doivent au préalable recevoir les autorisations nécessaires. Pour plus de détails, consultez la rubrique Politiques d'autorisation et exemples.

Élément Valeur
Opération API BatchPeekMessage
Action mns:BatchPeekMessage
Resource acs:mns:$region:$accountid:/queues/$queueName/messages

Syntaxe de la requête

GET /queues/$queueName/messages?peekonly=true&numOfMessages=<num> HTTP/1.1
Host: $AccountId.mns.<region>.aliyuncs.com
Date: <date>
x-mns-version: 2015-06-06
Authorization: MNS <AccessKeyId>:<Signature>

Paramètres URI

Paramètre Type Obligatoire Exemple Description
peekonly Boolean Oui true Défini sur true. Indique que les messages sont consultés sans modification d'état.
numOfMessages Integer Non 16 Nombre maximal de messages consultables simultanément.

En-têtes de requête

Aucun en-tête spécifique à cette opération. Pour les en-têtes communs, consultez la section [Paramètres communs].

Corps de la requête

Aucun.

Syntaxe de la réponse

HTTP/1.1 200 OK
Content-Type: text/xml;charset=utf-8
x-mns-request-id: <request-id>
x-mns-version: 2015-06-06

<?xml version="1.0" encoding="UTF-8"?>
<Messages xmlns="http://mns.aliyuncs.com/doc/v1/">
  <Message>
    <MessageId>...</MessageId>
    <MessageBodyMD5>...</MessageBodyMD5>
    <MessageBody>...</MessageBody>
    <EnqueueTime>...</EnqueueTime>
    <FirstDequeueTime>...</FirstDequeueTime>
    <DequeueCount>...</DequeueCount>
    <Priority>...</Priority>
  </Message>
  <!-- Additional <Message> elements -->
</Messages>

Paramètres de réponse

Le corps de la réponse est au format XML. Chaque élément <Message> contient les champs suivants :

Paramètre Type Exemple Description
MessageId String D6D5F7C9C12D14A4-1-14D953EFC72-20000**** Identifiant unique du message au sein de la file d'attente.
MessageBody String This is a test message. Corps du message.
MessageBodyMD5 String F9360F391579E71CA77BC5D50242**** Hachage MD5 du corps du message.
EnqueueTime Long 1250700979248 Horodatage d'entrée du message dans la file d'attente. Il s'agit d'un horodatage UNIX exprimé en millisecondes depuis le 1er janvier 1970, 00:00:00 UTC.
FirstDequeueTime Long 1250700979348 Horodatage de la première consommation du message. Il s'agit d'un horodatage UNIX en millisecondes. Sa valeur est égale à celle de EnqueueTime si DequeueCount est égal à 0.
DequeueCount Integer 5 Nombre total de fois où le message a été consommé.
Priority Integer 8 Priorité du message.

Exemples

Exemple de requête

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****

Exemple de réponse

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>B4D5E8A7F23C19B5-2-15E064AFC83-30001****</MessageId>
    <MessageBodyMD5>A1B2C3D4E5F6A7B8C9D0E1F2A3B4****</MessageBodyMD5>
    <MessageBody>This is a test message.</MessageBody>
    <EnqueueTime>1250700979250</EnqueueTime>
    <FirstDequeueTime>1250700979352</FirstDequeueTime>
    <DequeueCount>5</DequeueCount>
    <Priority>8</Priority>
  </Message>
</Messages>

Codes d'erreur

Code d'erreur Message d'erreur Code d'état HTTP Description
QueueNotExist The queue name you provided is not exist. 404 La file d'attente spécifiée n'existe pas. Vérifiez le nom de la file ou créez-la au préalable.
MessageNotExist Message not exist. 404 Aucun message visible n'est présent dans la file d'attente.

Voir aussi