Peek-Lock Nachricht (nicht destruktives Lesen)
Dieser Vorgang ruft eine Nachricht atomisch ab und sperrt sie aus einer Warteschlange oder einem Abonnement zur Verarbeitung. Die Nachricht wird während der sperrdauer, die in der Warteschlange/Abonnementbeschreibung angegeben ist, garantiert nicht an andere Empfänger (nur in derselben Warteschlange oder in demselben Abonnement) übermittelt. Wenn die Sperre abläuft, wird die Nachricht für andere Empfänger verfügbar. Um die Verarbeitung der Nachricht abzuschließen, sollte der Empfänger einen Löschbefehl mit der sperr-ID ausgeben, die von diesem Vorgang empfangen wurde. Um die Verarbeitung der Nachricht aufzugeben und sie für andere Empfänger zu entsperren, sollte ein Befehl "Nachricht entsperren" ausgegeben werden, andernfalls kann der Sperrzeitraum ablaufen.
Dieser Vorgang sollte in Anwendungen verwendet werden, die Mindestens einmal Zustellungszusicherungen erfordern. Wenn der Empfänger die Nachricht nicht löscht, bevor die Verarbeitung erfolgreich ausgeführt wird, stellt dieser Vorgang sicher, dass ein anderer Empfänger nach Ablauf der Sperrdauer die Verarbeitung versuchen kann.
Bitten
Methode | Anforderungs-URI | HTTP-Version |
---|---|---|
BEREITSTELLEN | http{s}://{serviceNamespace}.servicebus.windows.net/{queuePath}/messages/head oder http{s}://{serviceNamespace}.servicebus.windows.net/{topicPath}/subscriptions/{subscriptionName}/messages/head|HTTP/1.1 |
Anforderungsheader
In der folgenden Tabelle werden die erforderlichen und optionalen Anforderungsheader beschrieben. Zusätzlich zu den aufgelisteten Eigenschaften kann die Kopfzeile benutzerdefinierte Eigenschaften enthalten. Sehen Sie sich das Beispiel an.
Anforderungsheader | Beschreibung |
---|---|
Ermächtigung | Geben Sie einen der folgenden Tokenwerte an:
|
Anforderungstext
Nichts.
Antwort
Die Antwort enthält einen HTTP-Statuscode, eine Reihe von Antwortheadern und den Antworttext.
Antwortcodes
Code | Beschreibung |
---|---|
201 | Nachricht wurde erfolgreich abgerufen und gesperrt. |
204 | Es sind keine Nachrichten innerhalb des angegebenen Timeoutzeitraums verfügbar. |
400 | Ungültige Anforderung. |
401 | Autorisierungsfehler. |
410 | Die angegebene Warteschlange oder das angegebene Abonnement ist nicht vorhanden. |
500 | Interner Fehler. |
Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.
Antwortheader
Die Antwort für diesen Vorgang enthält die folgenden Header. Die Antwort kann auch weitere standardmäßige HTTP-Header enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.
Antwortheader | Beschreibung |
---|---|
Content-Type |
Auf application/atom+xml;type=entry;charset=utf-8 festgelegt. |
Location |
Der URI der gesperrten Nachricht. Sie können diesen URI verwenden, um die Nachricht zu entsperren oder zu löschen. |
BrokerProperties |
JSON-codierte BrokerProperties der empfangenen Nachricht. Die LockToken -Eigenschaft stellt die Sperr-ID für die zurückgegebene Nachricht dar. Die SequenceNumber -Eigenschaft stellt die Sequenznummer der zurückgegebenen Nachricht dar. |
Antworttext
Der Antworttext ist der Nachrichtentext der abgerufenen Nachricht.
Beispiel
Die folgenden HTTP-Anforderungssperren und gibt Nachrichten aus einer Warteschlange zurück:
POST https://your-namespace.servicebus.windows.net/HttpClientSampleQueue/messages/head?timeout=60 HTTP/1.1
Authorization: SharedAccessSignature sr=your-namespace&sig=Fg8yUyR4MOmXfHfj55f5hY4jGb8x2Yc%2b3%2fULKZYxKZk%3d&se=1404256819&skn=RootManageSharedAccessKey
Host: your-namespace.servicebus.windows.net
Content-Length: 0
Service Bus gibt die folgende Antwort zurück. Die Nachricht enthält die benutzerdefinierten Eigenschaften Priority
und Customer
:
HTTP/1.1 201 Created
Transfer-Encoding: chunked
Content-Type: application/atom+xml;type=entry;charset=utf-8
Location: https://your-namespace.servicebus.windows.net/httpclientsamplequeue/messages/2/7da9cfd5-40d5-4bb1-8d64-ec5a52e1c547
Server: Microsoft-HTTPAPI/2.0
BrokerProperties: {"DeliveryCount":1,"EnqueuedSequenceNumber":0,"EnqueuedTimeUtc":"Wed, 02 Jul 2014 01:32:27 GMT","Label":"M1","LockToken":"7da9cfd5-40d5-4bb1-8d64-ec5a52e1c547","LockedUntilUtc":"Wed, 02 Jul 2014 01:33:27 GMT","MessageId":"31907572164743c38741631acd554d6f","SequenceNumber":2,"State":"Active","TimeToLive":10}
Priority: "High"
Customer: "12345,ABC"
Date: Wed, 02 Jul 2014 01:32:27 GMT
12
This is a message.
0