列出佇列
此作業會列出特定儲存體帳戶中的所有佇列。
要求
您可以依照下列方式建構 List Queues
要求。 建議使用 HTTPS。 以儲存體帳戶的名稱取代 myaccount 。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
GET |
https://myaccount.queue.core.windows.net?comp=list |
HTTP/1.1 |
模擬儲存體服務 URI
當您對模擬儲存體服務提出要求時,請將模擬器主機名稱和 Azure 佇列儲存體埠指定為 127.0.0.1:10001
,後面接著模擬的儲存體帳戶名稱。
方法 | 要求 URI | HTTP 版本 |
---|---|---|
GET |
http://127.0.0.1:10001/devstoreaccount1?comp=list |
HTTP/1.1 |
URI 參數
您可以在要求 URI 上指定下列其他參數。
參數 | Description |
---|---|
prefix |
篩選結果,只傳回名稱開頭為指定前置詞的佇列。 |
marker |
識別下一個清單作業所要傳回之清單部分的字串值。 如果傳回的清單未完成,作業會傳回 NextMarker 回應本文內的專案。 然後,您可以在後續呼叫中使用此值作為查詢參數,以要求佇列清單的下一個部分。此標記值對於用戶端為不透明。 |
maxresults |
指定要傳回的最大佇列數目。 如果未 maxresults 指定,伺服器最多會傳回 5,000 個專案。 |
include=metadata |
選擇性。 包含此參數可指定將容器的中繼資料當做回應主體的一部分傳回。 請注意,使用此參數要求的中繼資料必須根據 2009-09-19 版佇列儲存體所加加的命名限制來儲存。 從這個版本開始,所有中繼資料名稱都必須遵守 C# 識別碼的命名慣例。 |
timeout |
選擇性。
timeout 參數以秒為單位。 如需詳細資訊,請參閱 設定佇列儲存體作業的逾時。 |
要求標頭
下表描述必要的和選用的要求標頭。
要求標頭 | 描述 |
---|---|
Authorization |
必要。 指定授權配置、帳戶名稱和簽章。 如需詳細資訊,請參閱授權對 Azure 儲存體提出要求。 |
Date 或 x-ms-date |
必要。 指定要求的「國際標準時間」(UTC)。 如需詳細資訊,請參閱授權對 Azure 儲存體提出要求。 |
x-ms-version |
選擇性。 指定用於這個要求的作業版本。 如需詳細資訊,請參閱 Azure 儲存體服務的版本。 |
x-ms-client-request-id |
選擇性。 提供用戶端產生的不透明值,其中包含 1-kibibyte (KiB) 設定記錄時記錄在記錄中的字元限制。 強烈建議您使用此標頭,將用戶端活動與伺服器收到的要求相互關聯。 如需詳細資訊,請參閱 監視 Azure 佇列儲存體。 |
要求本文
無。
範例要求
請參閱本文稍後的一節。
回應
回應包括 HTTP 狀態碼、一組回應標頭,以及含有佇列清單的回應主體。
狀態碼
成功的作業會傳回狀態碼 200 (OK)。 如需狀態碼的相關資訊,請參閱 狀態和錯誤碼。
回應標頭
這項作業的回應包括下列標頭。 回應也可以包含額外的標準 HTTP 標頭。 所有標準標頭都符合 HTTP/1.1 通訊協定規格。
回應標頭 | 描述 |
---|---|
x-ms-request-id |
此標頭可唯一識別已提出的要求,並可用於對要求進行疑難排解。 如需詳細資訊,請參閱 針對 API 作業進行疑難排解。 |
x-ms-version |
指出用來執行要求的佇列儲存體版本。 對 2009-09-19 及更新版本提出要求會傳回此標頭。 |
Date |
UTC 日期/時間值,指出起始回應的時間。 服務會產生此值。 |
x-ms-client-request-id |
您可以使用此標頭來針對要求和對應的回應進行疑難排解。 如果此標頭存在於要求中,這個標頭的值會等於標頭的值 x-ms-client-request-id 。 此值最多為 1024 個可見的 ASCII 字元。
x-ms-client-request-id 如果要求中沒有標頭,則此標頭不會出現在回應中。 |
回應本文
回應本文的格式如下。 請注意, Prefix
只有在您在 URI 上指定 、 Marker
和 MaxResults
元素時,才會存在。 只有在清單結果未完成時,專案 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。 它會將初始作業傳回的最大結果設定為三。
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>