匯出 (0) 列印
全部展開

列出佇列

更新日期: 2013年11月

這項作業會列出指定儲存體帳戶中的所有佇列。

List Queues 要求的建構如下。建議使用 HTTPS。請以您的儲存體帳戶名稱取代 myaccount

 

方法 要求 URI HTTP 版本

GET

https://myaccount.queue.core.windows.net?comp=list

HTTP/1.1

對模擬儲存體服務提出要求時,請將模擬器主機名稱和佇列服務通訊埠指定為 127.0.0.1:10001,後面接著模擬儲存體帳戶名稱:

 

方法 要求 URI HTTP 版本

GET

http://127.0.0.1:10001/devstoreaccount1?comp=list

HTTP/1.1

如需詳細資訊,請參閱About Development Storage

您可以在要求的 URI 中指定下列其他參數。

 

參數 描述

prefix

篩選結果,只傳回名稱開頭為指定前置詞的佇列。

marker

識別下一個清單作業所要傳回之清單部分的字串值。如果傳回的清單不完整,此作業會在回應主體中傳回 NextMarker 項目。您接著可以在要求佇列清單下一個部分的後續呼叫中,使用此值做為查詢參數。

此標記值對於用戶端為不透明。

maxresults

指定要傳回的最大佇列數目。如果未指定 maxresults,伺服器最多將傳回 5,000 個項目。

include=metadata

選擇性。包含此參數可指定將容器的中繼資料當做回應主體的一部分傳回。

請注意,您必須根據 2009-09-19 版的佇列服務規定的命名限制,藉以儲存使用此參數要求的中繼資料。從這個版本開始,所有中繼資料名稱必須遵守 C# 識別碼的命名慣例。

timeout

選擇性。timeout 參數以秒為單位。如需詳細資訊,請參閱設定佇列服務作業的逾時值

下表描述必要的和選用的要求標頭。

 

要求標頭 描述

Authorization

必要項。指定驗證配置、帳戶名稱及簽章。如需詳細資訊,請參閱Azure 儲存體服務的驗證

Datex-ms-date

必要項。指定要求的國際標準時間 (UTC)。如需詳細資訊,請參閱Azure 儲存體服務的驗證

x-ms-version

選擇性。指定用於這個要求的作業版本。如需詳細資訊,請參閱Azure 儲存體服務的版本設定

x-ms-client-request-id

選擇性。提供由用戶端產生的不透明值 (具有 1 KB 的字元限制),當儲存體分析記錄為啟用狀態時,此值會記錄在分析記錄檔中。如果是和伺服器所接收的要求相關的用戶端活動,則強烈建議您使用此標頭。如需詳細資訊,請參閱關於儲存體分析記錄Windows Azure 記錄:使用記錄檔追蹤儲存體需求

無。

如需範例要求,請參閱以下的<範例要求和回應>一節。

回應包括 HTTP 狀態碼、一組回應標頭,以及含有佇列清單的回應主體。

成功的作業會傳回狀態碼「200 (OK)」。

如需狀態碼的資訊,請參閱狀態和錯誤碼

這項作業的回應包括下列標頭。回應也可能包括其他標準 HTTP 標頭。所有標準標頭都符合 HTTP/1.1 通訊協定規格

 

回應標頭 描述

x-ms-request-id

此標頭可唯一識別提出的要求,而且可用來進行要求的疑難排解。如需詳細資訊,請參閱對應用程式開發介面作業進行疑難排解

x-ms-version

指出用於執行要求的佇列服務版本。對 2009-09-19 (含) 以上版本提出要求會傳回此標頭。

Date

服務產生的 UTC 日期/時間值,可指出啟動回應的時間。

回應主體的格式如下。請注意,唯有在 URI 中指定 PrefixMarkerMaxResults 項目時,這些項目才存在。只有清單結果不完整時,NextMarker 項目才具有值。

在 2013-08-15 及更新版本中,AccountName 元素的 EnumerationResults 屬性已重新命名為 ServiceEndpoint。此外已移除 Url 下的 Queue 元素。

<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="https://myaccount.queue.core.windows.net/">
 <Prefix>string-value</Prefix>
 <Marker>string-value</Marker>
 <MaxResults>int-value</MaxResults>
 <Queues>
  <Queue>
   <Name>string-value</Name>
   <Metadata>
   <metadata-name>value</metadata-name>
  <Metadata>
  </Queue>
 <NextMarker />
</EnumerationResults>

只有在 URI 中指定 Metadata 參數時,include=metadata 項目才存在。在 Metadata 項目中,每個名稱/值組的值會列於與組合名稱對應的項目內。

如有中繼資料名稱/值組違反 2009-09-19 版本所強制執行的命名限制,回應主體會在 x-ms-invalid-name 項目內指出此問題名稱,如下列 XML 片段所示:


   …
   <Metadata>
    <MyMetadata1>first value</MyMetadata1>
    <MyMetadata2>second value</MyMetadata2>
    <x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>
   <Metadata>
   …

如需範例回應,請參閱以下的<範例要求和回應>一節。

只有帳戶擁有者可呼叫這項作業。

如果您指定 maxresults 參數的值,且要傳回的佇列數目超過此值,或超過 maxresults 的預設值,回應主體會包含 NextMarker 項目,該項目指出後續要求所要傳回的下一個佇列。若要傳回下一組項目,請指定 NextMarker 的值做為 URI 中的標記參數,以進行後續要求。

請注意,NextMarker 的值應視為不透明。

佇列會依字母順序列於回應主體中。

下列為範例 URI 要求帳戶的佇列清單,並將初始作業所要傳回的最大結果數目設為 3。

GET https://myaccount.queue.core.windows.net?comp=list&maxresults=3&include=metadata HTTP/1.1

所傳送的要求包含下列標頭:

x-ms-version: 2013-08-15
x-ms-date: Wed, 23 Oct 2013 00:55:16 GMT
Authorization: SharedKey myaccount:Q7tar7qqM2LD/Wey7OQNPP3hMNap9wjg+g9AlAYeFls=

傳回的狀態碼和回應標頭如下:

HTTP/1.1 200 OK
Transfer-Encoding: chunked
Content-Type: application/xml
Date: Wed, 23 Oct 2013 00:56:38 GMT
x-ms-version: 2013-08-15
Server: Windows-Azure-Queue/1.0 Microsoft-HTTPAPI/2.0

此要求的回應 XML 如下。請注意,NextMarker 項目跟隨在一組佇列之後,並包含所要傳回之下一個佇列的名稱。

<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="https://myaccount.queue.core.windows.net/">
 <Prefix>q</Prefix>
 <MaxResults>3</MaxResults>
 <Queues>
  <Queue>
   <Name>q1</Name>
   <Metadata>
    <Color>red</Color>
    <SomeMetadataName>SomeMetadataValue</SomeMetadataName>
   <Metadata>
  </Queue>
  <Queue>
   <Name>q2</Name>
   <Metadata>
    <Color>blue</Color>
    <SomeMetadataName>SomeMetadataValue</SomeMetadataName>
   <Metadata>
  </Queue>
  <Queue>
   <Name>q3</Name>
   <Metadata>
    <Color>yellow</Color>
    <SomeMetadataName>SomeMetadataValue</SomeMetadataName>
   <Metadata>
  </Queue>
 </Queues>
 <NextMarker>q4</NextMarker>
</EnumerationResults>

後續清單作業在要求 URI 中指定標記 (如下所示)。下一組結果在回傳時,會以標記所指定的佇列起始。以下是後續要求的 URI:

https://myaccount.queue.core.windows.net?comp=list&maxresults=3&include=metadata&prefix=q&marker=q4

此項作業的回應主體如下:

<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="https://myaccount.queue.core.windows.net/">
 <Prefix>q</Prefix>
 <Marker>q4</Marker>
 <MaxResults>3</MaxResults>
 <Queues>
  <Queue>
   <Name>q4</Name>
   <Metadata>
    <Color>green</Color>
    <SomeMetadataName>SomeMetadataValue</SomeMetadataName>
   <Metadata>
  </Queue>
  <Queue>
   <Name>q5</Name>
   <Metadata>
    <Color>violet</Color>
    <SomeMetadataName>SomeMetadataValue</SomeMetadataName>
   <Metadata>
  </Queue>
 </Queues>
 <NextMarker />
</EnumerationResults>

顯示:
© 2014 Microsoft