Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

List Containers (API REST)

 

Le List Containers opération retourne une liste des conteneurs sous le compte spécifié.

Le List Containers demande peut être construite comme suit. HTTPS est recommandé. Remplacez myaccount avec le nom de votre compte de stockage :

Méthode

URI de demande

Version HTTP

GET

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

HTTP/1.1

Notez que l'URI doit toujours inclure la barre oblique (/) pour séparer le nom d'hôte du chemin d'accès et les portions de requête de l'URI. Dans le cas de la List Containers opération, la partie de chemin d'accès de l'URI est vide.

Lorsque vous élaborez une demande auprès du service de stockage émulé, spécifiez le nom d'hôte de l'émulateur et le port du service Blob en tant que 127.0.0.1:10000, suivie du nom de compte de stockage émulé :

Méthode

URI de demande

Version HTTP

GET

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

HTTP/1.1

Notez que le stockage émulé prend en charge uniquement les tailles d'objets blob jusqu'à 2 Go.

Pour plus d'informations, consultez à l'aide de l'émulateur de stockage Azure pour le développement et le test et différences entre l'émulateur de stockage et les Services de stockage Azure.

Les paramètres supplémentaires suivants peuvent être spécifiés dans l'URI de la demande.

Paramètre

Description

prefix

Facultatif. Filtre les résultats pour retourner uniquement les conteneurs dont le nom commence par le préfixe spécifié.

marker

Facultatif. Valeur de chaîne qui identifie la partie de la liste à renvoyer avec l'opération de liste suivante. L'opération renvoie une valeur de marqueur dans le corps de la réponse si la liste renvoyée n'était pas terminée. La valeur de marqueur peut ensuite être utilisée dans un appel suivant pour demander l'ensemble d'éléments de liste suivant.

La valeur de marqueur est opaque au client.

maxresults

Facultatif. Indique le nombre maximal de conteneurs à retourner. Si la demande ne spécifie pas maxresults, ou spécifie une valeur supérieure à 5 000, le serveur retourne jusqu'à 5 000 éléments. Si le paramètre a une valeur inférieure ou égale à zéro, le serveur retourne le code d'état 400 (Demande incorrecte).

include=metadata

Facultatif. Indiquez ce paramètre pour spécifier que les métadonnées du conteneur sont renvoyées dans le corps de la réponse.

Notez que les métadonnées demandées avec ce paramètre doivent être stockées conformément aux restrictions d'attribution de nom imposées par la version du 19/09/2009 du service BLOB. À compter de cette version, tous les noms de métadonnées doivent respecter les conventions d'affectation de noms de identificateurs c#.

timeout

Facultatif. Le timeout paramètre est exprimé en secondes. Pour plus d'informations, consultez Définition de délais d'expiration pour les opérations du service BLOB.

Le tableau suivant décrit les en-têtes de demande obligatoires ou facultatifs.

En-tête de demande

Description

Authorization

Obligatoire. Spécifie le schéma d'authentification, le nom du compte et la signature. Pour plus d'informations, consultez Authentification pour les services Azure Storage.

Masquer ou restaurer les mises à jour

Obligatoire. Spécifie le temps universel coordonné (UTC) pour la demande. Pour plus d'informations, consultez Authentification pour les services Azure Storage.

x-ms-version

Obligatoire pour toutes les demandes authentifiées. Spécifie la version de l'opération à utiliser pour cette demande. Pour plus d'informations, consultez Contrôle de version des services BLOB, de File d'attente et de Table dans Windows Azure.

x-ms-client-request-id

Facultatif. Fournit une valeur opaque générée par le client avec une limite de caractère de 1 Ko enregistrée dans les journaux d'analyse lorsque la journalisation de l'analyse de stockage est activée. L'utilisation de cet en-tête est fortement recommandée pour une corrélation des activités du côté client avec les requêtes reçues par le serveur. Pour plus d'informations, consultez À propos de la journalisation Storage Analytics et journalisation Azure : à l'aide de journaux pour suivre les demandes de stockage.

La réponse inclut un code d'état HTTP, un ensemble d'en-têtes de réponse et un corps de réponse au format XML.

Une opération réussie envoie le code d'état 200 (OK).

Pour plus d'informations sur les codes d'état, consultez Codes d'état et d'erreur.

La réponse de l'opération inclut les en-têtes suivants. La réponse peut également inclure des en-têtes HTTP standard supplémentaires. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.

En-tête de réponse

Description

Content-Type

En-tête HTTP/1.1 standard. Spécifie le format dans lequel les résultats sont renvoyés. Actuellement, cette valeur est application/xml.

x-ms-request-id

Cet en-tête identifie de façon unique la demande qui a été effectuée et peut être utilisé pour résoudre les problèmes de la demande. Pour plus d'informations, consultez Dépannage des opérations de l'API.

x-ms-version

Indique la version du service BLOB utilisée pour exécuter la demande. Cet en-tête est renvoyé pour les demandes effectuées avec la version du 19/09/2009 et ultérieure.

Date

Une valeur de date/heure UTC générée par le service qui indique le moment auquel la réponse a été initiée.

Le format du corps de la réponse se présente comme suit.

<?xml version="1.0" encoding="utf-8"?> <EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net"> <Prefix>string-value</Prefix> <Marker>string-value</Marker> <MaxResults>int-value</MaxResults> <Containers> <Container> <Name>container-name</Name> <Properties> <Last-Modified>date/time-value</Last-Modified> <Etag>etag</Etag> <LeaseStatus>locked | unlocked</LeaseStatus> <LeaseState>available | leased | expired | breaking | broken</LeaseState> <LeaseDuration>infinite | fixed</LeaseDuration> </Properties> <Metadata> <metadata-name>value</metadata-name> </Metadata> </Container> </Containers> <NextMarker>marker-value</NextMarker> </EnumerationResults>

LeaseStatus, LeaseState, et LeaseDuration apparaissent uniquement dans la version 2012-02-12 et versions ultérieures.

Depuis la version 2013-08-15, la AccountName d'attribut pour le EnumerationResults élément a été renommé ServiceEndpoint. Le URL élément a également été supprimé de la Container élément. Pour les versions antérieures à 2013-08-15, l'URL du conteneur, tel que spécifié par le URL champ, n'inclut pas le restype=container paramètre. Si vous utilisez cette valeur pour effectuer d'autres demandes sur les conteneurs énumérés, ajoutez ce paramètre pour indiquer que le type de ressource est un conteneur.

Le Prefix, Marker, et MaxResults éléments sont uniquement présents s'ils ont été spécifiés dans l'URI. Le NextMarker élément a une valeur uniquement si les résultats de liste ne sont pas terminées.

Le Metadata l'élément est présent uniquement si le include=metadata paramètre a été spécifié dans l'URI. Dans la Metadata élément, la valeur de chaque paire nom-valeur est indiquée dans un élément correspondant au nom de la paire.

Si une paire nom-valeur de métadonnées viole les restrictions d'affectation de noms appliquées par la version 2009-09-19, le corps de réponse indique le nom problématique dans un x-ms-invalid-name élément, comme indiqué dans le fragment XML suivant :


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

System_CAPS_noteRemarque

Depuis la version 2009-09-19, la corps de la réponse pour List Containers renvoie le conteneur de l'heure de dernière modification d'un élément nommé Last-Modified. Dans les versions précédentes, cet élément a été nommé LastModified.

Seul le propriétaire du compte peut appeler cette opération.

Si vous spécifiez une valeur pour le maxresults paramètre et le nombre de conteneurs à renvoyer dépasse cette valeur, ou dépasse la valeur par défaut maxresults, le corps de la réponse contient un NextMarker élément qui indique le conteneur suivant à retourner dans une demande suivante. Pour renvoyer l'ensemble suivant d'éléments, spécifiez la valeur de NextMarker en tant que paramètre de marqueur dans l'URI de la demande suivante.

Notez que la valeur de NextMarker doit être traitée comme opaque.

Les conteneurs sont répertoriés par ordre alphabétique dans le corps de la réponse.

Le List Containers opération expire après 30 secondes.

L'exemple d'URI suivant demande la liste des conteneurs d'un compte, en définissant les résultats maximum à renvoyer pour l'opération initiale à 3.

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

La demande est envoyée avec ces en-têtes :

x-ms-version: 2013-08-15 x-ms-date: Wed, 23 Oct 2013 22:08:44 GMT Authorization: SharedKey myaccount:CY1OP3O3jGFpYFbTCBimLn0Xov0vt0khH/D5Gy0fXvg=

Le code d'état et les en-têtes de réponse sont renvoyés comme suit :

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

Le code XML de réponse pour cette demande est le suivant : Notez que le NextMarker élément suit l'ensemble des conteneurs et comprend le nom du conteneur suivant à retourner.

<?xml version="1.0" encoding="utf-8"?> <EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net/"> <MaxResults>3</MaxResults> <Containers> <Container> <Name>audio</Name> <Properties> <Last-Modified>Wed, 23 Oct 2013 20:39:39 GMT</Last-Modified> <Etag>0x8CACB9BD7C6B1B2</Etag> </Properties> </Container> <Container> <Name>images</Name> <Properties> <Last-Modified>Wed, 23 Oct 2013 20:39:39 GMT</Last-Modified> <Etag>0x8CACB9BD7C1EEEC</Etag> </Properties> </Container> <Container> <Name>textfiles</Name> <Properties> <Last-Modified>Wed, 23 Oct 2013 20:39:39 GMT</Last-Modified> <Etag>0x8CACB9BD7BACAC3</Etag> </Properties> </Container> </Containers> <NextMarker>video</NextMarker> </EnumerationResults>

L'opération de liste suivante spécifie le marqueur dans l'URI de la demande, comme suit. L'ensemble suivant de résultats est retourné en commençant par le conteneur spécifié par le marqueur.

https://myaccount.blob.core.windows.net/?comp=list&maxresults=3&marker=video
Afficher: