接收並刪除訊息 (破壞性讀取)
此作業會在一個不可部分完成的作業中從佇列或訂閱接收訊息,然後從該佇列或訂閱中移除訊息。
要求
方法 | 要求 URI | HTTP 版本 |
---|---|---|
刪除 | http{s}://{serviceNamespace}.servicebus.windows.net/{queuePath}/messages/head 或 http{s}://{serviceNamespace}.servicebus.windows.net/{topicPath}/subscriptions/{subscriptionName}/messages/head|HTTP/1.1 |
要求標頭
下表描述必要的和選用的要求標頭。 除了列出的屬性以外,標頭還可包含自訂屬性。 請參閱範例。
要求標頭 | 描述 |
---|---|
授權 | 指定下列其中一個權杖值:
|
要求本文
無。
回應
回應包括 HTTP 狀態碼和一組回應標頭。
回應碼
程式碼 | 描述 |
---|---|
200 | 已順利擷取和刪除訊息。 |
204 | 在指定的逾時期間內沒有可用的訊息。 |
400 | 不正確的要求。 |
401 | 授權失敗。 |
410 | 指定的佇列或訂閱不存在。 |
500 | 內部錯誤。 |
如需狀態碼的相關資訊,請參閱 狀態和錯誤碼。
回應標頭
這項作業的回應包括下列標頭。 回應也可能包括其他標準 HTTP 標頭。 所有標準標頭都符合 HTTP/1.1 通訊協定規格。
回應本文
回應內文是已擷取訊息的訊息內文。
範例
下列 HTTP 要求會接收並刪除佇列中的訊息:
DELETE 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
服務匯流排會傳回下列回應。 訊息中包含自訂屬性 “Priority” 和 “Customer”:
HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/atom+xml;type=entry;charset=utf-8
Server: Microsoft-HTTPAPI/2.0
BrokerProperties: {"DeliveryCount":1,"EnqueuedSequenceNumber":0,"EnqueuedTimeUtc":"Tue, 01 Jul 2014 23:00:23 GMT","Label":"M1","MessageId":"3a146f76afee41648677887ffced72d8","SequenceNumber":1,"State":"Active","TimeToLive":10}
Priority: "High"
Customer: "12345,ABC"
Date: Tue, 01 Jul 2014 23:00:23 GMT
12
This is a message.
0