Üzenetek betekintője
A Peek Messages
művelet egy vagy több üzenetet kér le az üzenetsor elejéről, de nem módosítja az üzenet láthatóságát.
Kérés
A kérést az Peek Messages
alábbiak szerint hozhatja létre. Javasoljuk, hogy HTTPS-t használjon. Cserélje le a myaccount elemet a tárfiók nevére, a myqueue helyére pedig az üzenetsor nevét:
Metódus | Kérés URI-ja | HTTP-verzió |
---|---|---|
GET |
https://myaccount.queue.core.windows.net/myqueue/messages?peekonly=true |
HTTP/1.1 |
Emulált tárolási szolgáltatás kérése
Amikor kérést küld az emulált tárolási szolgáltatásra, adja meg az emulátor gazdagépnevét és a Queue service portot 127.0.0.1:10001
, majd az emulált tárfiók nevét:
Metódus | Kérés URI-ja | HTTP-verzió |
---|---|---|
GET |
http://127.0.0.1:10001/devstoreaccount1/myqueue/messages?peekonly=true |
HTTP/1.1 |
További információ: Az Azurite emulátor használata helyi Azure Storage-fejlesztéshez.
URI-paraméterek
A kérelem URI-ján a következő paraméterek adhatók meg.
Paraméter | Leírás |
---|---|
numofmessages |
Választható. Nem nulla egész szám, amely az üzenetsorból betekintendő üzenetek számát adja meg, legfeljebb 32-ig. Alapértelmezés szerint egyetlen üzenet jelenik meg az üzenetsorból ezzel a művelettel. |
timeout |
Választható. A timeout paraméter másodpercben van kifejezve. További információ: Időtúllépések beállítása a Queue szolgáltatás műveleteihez. |
Kérésfejlécek
A szükséges és nem kötelező kérésfejléceket az alábbi táblázat ismerteti:
Kérelem fejléce | Leírás |
---|---|
Authorization |
Kötelező. Megadja az engedélyezési sémát, a fióknevet és az aláírást. További információ: Kérelmek engedélyezése az Azure Storage-ba. |
Date vagy x-ms-date |
Kötelező. Megadja a kérés egyezményes világidő (UTC) formátumban kifejezett időpontját. További információ: Kérelmek engedélyezése az Azure Storage-ba. |
x-ms-version |
Választható. A kérelemhez használandó művelet verzióját adja meg. További információ: Az Azure Storage-szolgáltatások verziószámozása. |
x-ms-client-request-id |
Választható. Ügyfél által generált, átlátszatlan értéket biztosít egy 1 kibibyte (KiB) karakterkorláttal, amelyet a naplózás konfigurálásakor rögzít a naplókban. Javasoljuk, hogy ezt a fejlécet használva korrelálja az ügyféloldali tevékenységeket a kiszolgáló által kapott kérésekkel. További információ: Az Azure Queue Storage monitorozása. |
A kérés törzse
Nincsenek.
Reagálás
A válasz tartalmaz egy HTTP-állapotkódot, egy válaszfejléceket és egy XML-választörzset.
Állapotkód
A sikeres művelet a 200 -os állapotkódot adja vissza (OK).
További információ az állapotkódokról: Állapot- és hibakódok.
Válaszfejlécek
A műveletre adott válasz a következő fejléceket tartalmazza. A válasz további szabványos HTTP-fejléceket is tartalmaz. Minden szabványos fejléc megfelel a HTTP/1.1 protokoll specifikációjának.
Válaszfejléc | Description |
---|---|
x-ms-request-id |
Egyedileg azonosítja a végrehajtott kérést, és segítségével elháríthatja a kérést. További információ: API-műveletek hibaelhárítása. |
x-ms-version |
A kérés végrehajtásához használt Queue szolgáltatás verziója. A 2009-09-19-es és újabb verzióval kapcsolatos kérések esetén lett visszaadva. |
Date |
A szolgáltatás által létrehozott UTC dátum/idő érték, amely a válasz indításának időpontját jelzi. |
x-ms-client-request-id |
A kérések és a hozzájuk tartozó válaszok hibaelhárítására használható. A fejléc értéke megegyezik a x-ms-client-request-id kérelemben szereplő fejléc értékével, és az érték legfeljebb 1024 látható ASCII-karaktert tartalmaz. Ha a x-ms-client-request-id fejléc nem szerepel a kérelemben, akkor az nem jelenik meg a válaszban. |
Választörzs
A művelet válasz XML-jének Peek Messages
visszaadása a következő formátumban történik.
Az MessageID
elem egy GUID-érték, amely azonosítja az üzenetet az üzenetsorban. Ezt az értéket a Queue szolgáltatás rendeli hozzá az üzenethez, és átlátszatlan az ügyfél számára.
A InsertionTime
és ExpirationTime
az elem UTC-értékként jelenik meg, és az RFC 1123-as verziójában leírtak szerint van formázva.
Az DequeueCount
elem értéke 1 az üzenet első lekérdezésekor. Ez az érték minden alkalommal növekszik, amikor az üzenetet később lekérdezik.
Megjegyzés
A DequeueCount
rendszer csak akkor adja vissza az elemet a választörzsben, ha az üzenetsor a Queue service 2009-09-19-es verziójával lett létrehozva.
<QueueMessagesList>
<QueueMessage>
<MessageId>string-message-id</MessageId>
<InsertionTime>insertion-time</InsertionTime>
<ExpirationTime>expiration-time</ExpirationTime>
<DequeueCount>integer</DequeueCount>
<MessageText>message-body</MessageText>
</QueueMessage>
</QueueMessagesList>
Megjegyzés
Ez a válasz abban különbözik az Üzenetek lekérése művelet válaszától, hogy nem tartalmazza a vagy TimeNextVisible
elemeketPopReceipt
.
Mintaválasz
Response Status:
HTTP/1.1 200 OK
Response Headers:
Transfer-Encoding: chunked
Content-Type: application/xml
Date: Fri, 16 Sep 2011 22:51:18 GMT
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
Response Body:
<?xml version="1.0" encoding="utf-8"?>
<QueueMessagesList>
<QueueMessage>
<MessageId>06eba214-8107-4412-a7f6-710a9baff647</MessageId>
<InsertionTime>Fri, 09 Oct 2009 18:59:54 GMT</InsertionTime>
<ExpirationTime>Fri, 16 Sep 2009 18:59:54 GMT</ExpirationTime>
<DequeueCount>1</DequeueCount>
<MessageText>PHRlc3Q+dGhpcyBpcyBhIHRlc3QgbWVzc2FnZTwvdGVzdD4=</MessageText>
</QueueMessage>
</QueueMessagesList>
Engedélyezés
Ezt a műveletet a fiók tulajdonosa és bárki végrehajthatja, aki rendelkezik a művelet végrehajtásához engedéllyel rendelkező közös hozzáférésű jogosultsággal.
Megjegyzések
Ha egy üzenet lekéri az üzenetsorból peekonly
a következő értékre van állítva: true
, az üzenet láthatósága változatlan marad. Az üzenet mindaddig elérhető marad az üzenetsor többi felhasználója számára, amíg az ügyfél le nem kéri az üzenetet az Üzenetek lekérése művelettel. Az üzenetet kérő ügyfél nem kap nyugtát a válaszhoz, ezért nem tudja törölni az üzenetet.
A művelettel Peek Messages
csak a látható üzenetek kérhetők le. Vegye figyelembe, hogy a lekérhető üzenetek maximális száma 32.
Amikor a rendszer először kér le egy üzenetet a hívásával Get Messages
, a tulajdonsága DequeueCount
1-re van állítva. Ha a rendszer nem törli, és később ismét lekéri, a DequeueCount
tulajdonság növekszik. Az ügyfél ezt az értéket használhatja annak meghatározására, hogy egy üzenet hányszor lett lekérve.
Megjegyzés
A hívás Peek Messages
nem növeli a értékét DequeueCount
, de ezt az értéket adja vissza az ügyfél számára az olvasáshoz.
Ha a numofmessages paraméter kívül esik a tartományon, a szolgáltatás a 400-as állapotkódot (Hibás kérés) adja vissza a további hibainformációkkal együtt, ahogyan az alábbi példában látható:
HTTP/1.1 400 One of the query parameters specified in the request URI is outside the permissible range.
Connection: Keep-Alive
Content-Length: 455
Via: 1.1 TK5-PRXY-22
Date: Wed, 02 May 2012 19:37:23 GMT
Content-Type: application/xml
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id: 6a03526c-ca2c-4358-a63a-b5d096988533
x-ms-version: 2011-08-18
<?xml version="1.0" encoding="utf-8"?>
<Error>
<Code>OutOfRangeQueryParameterValue</Code>
<Message>One of the query parameters specified in the request URI is outside the permissible range.
RequestId:6a03526c-ca2c-4358-a63a-b5d096988533
Time:2012-05-02T19:37:24.2438463Z
</Message>
<QueryParameterName>numofmessages</QueryParameterName>
<QueryParameterValue>0</QueryParameterValue>
<MinimumAllowed>1</MinimumAllowed>
<MaximumAllowed>32</MaximumAllowed>
</Error>
Lásd még
Kérések engedélyezése az Azure Storage-nak
Állapot- és hibakódok
Üzenetsor-szolgáltatás hibakódjai