List ContainersList Containers

L' List Containers opération renvoie une liste des conteneurs sous le compte de stockage spécifié.The List Containers operation returns a list of the containers under the specified storage account.

DemandeRequest

La demande List Containers peut être construite comme indiqué ci-dessous.The List Containers request may be constructed as follows. HTTPS est recommandé.HTTPS is recommended. Remplacez moncompte par le nom de votre compte de stockage :Replace myaccount with the name of your storage account:

MéthodeMethod URI de requêteRequest URI Version HTTPHTTP Version
GET https://myaccount.blob.core.windows.net/?comp=list HTTP/1.1HTTP/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.Note that the URI must always include the forward slash (/) to separate the host name from the path and query portions of the URI. Dans le cadre d'une opération List Containers, la partie de chemin d'accès de l'URI est vide.In the case of the List Containers operation, the path portion of the URI is empty.

Demande de service de stockage émuléEmulated Storage Service Request

Lorsque vous élaborez une demande pour le service de stockage émulé, spécifiez le nom d'hôte de l'émulateur et le port de service BLOB sous la forme 127.0.0.1:10000, suivi du nom de compte de stockage émulé :When making a request against the emulated storage service, specify the emulator hostname and Blob service port as 127.0.0.1:10000, followed by the emulated storage account name:

MéthodeMethod URI de requêteRequest URI Version HTTPHTTP Version
GET http://127.0.0.1:10000/devstoreaccount1?comp=list HTTP/1.1HTTP/1.1

Notez que le stockage émulé prend uniquement en charge les tailles d’objet BLOB allant jusqu’à 2 Gio.Note that emulated storage only supports blob sizes up to 2 GiB.

Pour plus d’informations, consultez utilisation 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.For more information, see Using the Azure Storage Emulator for Development and Testing and Differences Between the Storage Emulator and Azure Storage Services.

Paramètres URIURI Parameters

Les paramètres supplémentaires suivants peuvent être spécifiés dans l'URI de la demande.The following additional parameters may be specified on the request URI.

ParamètreParameter DescriptionDescription
prefix facultatif.Optional. Filtre les résultats pour retourner uniquement les conteneurs dont le nom commence par le préfixe spécifié.Filters the results to return only containers whose name begins with the specified prefix.
marker facultatif.Optional. Valeur de chaîne qui identifie la partie de la liste de conteneurs à retourner avec l’opération de liste suivante.A string value that identifies the portion of the list of containers to be returned with the next listing operation. L’opération retourne la NextMarker valeur dans le corps de la réponse si l’opération de liste n’a pas retourné tous les conteneurs restants à répertorier avec la page actuelle.The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. La NextMarker valeur peut être utilisée comme valeur pour le marker paramètre dans un appel suivant pour demander la page suivante d’éléments de liste.The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items.

La valeur de marqueur est opaque au client.The marker value is opaque to the client.
maxresults facultatif.Optional. Indique le nombre maximal de conteneurs à retourner.Specifies the maximum number of containers to return. Si la demande ne spécifie pas maxresults , ou spécifie une valeur supérieure à 5000, le serveur retournera jusqu’à 5000 éléments.If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.

Notez que si l’opération de listage franchit une limite de partition, le service renverra un jeton de liaison pour récupérer le reste des résultats.Note that if the listing operation crosses a partition boundary, then the service will return a continuation token for retrieving the remainder of the results. Pour cette raison, il est possible que le service retourne moins de résultats que spécifié par maxresults , ou que la valeur par défaut de 5000.For this reason, it is possible that the service will return fewer results than specified by maxresults, or than the default of 5000.

Si le paramètre est défini sur une valeur inférieure ou égale à zéro, le serveur retourne le code d’état 400 (requête incorrecte).If the parameter is set to a value less than or equal to zero, the server returns status code 400 (Bad Request).
include={metadata,deleted} facultatif.Optional. Spécifie un ou plusieurs datasets à inclure dans la réponse :Specifies one or more datasets to include in the response:

-metadata: Notez que les métadonnées demandées avec ce paramètre doivent être stockées conformément aux restrictions d’attribution de noms imposées par la version 2009-09-19 du service BLOB.-metadata: Note that metadata requested with this parameter must be stored in accordance with the naming restrictions imposed by the 2009-09-19 version of the Blob service. À compter de cette version, tous les noms de métadonnées doivent respecter les conventions d’affectation de noms pour les identificateurs C#.Beginning with this version, all metadata names must adhere to the naming conventions for C# identifiers.
-deleted: Version 2019-12-12 et versions ultérieures.-deleted: Version 2019-12-12 and newer. Spécifie que les conteneurs supprimés de manière réversible doivent être inclus dans la réponse.Specifies that soft deleted containers should be included in the response.
timeout facultatif.Optional. Le paramètre timeout est exprimé en secondes.The timeout parameter is expressed in seconds. Pour plus d’informations, consultez définition de délais d’attente pour les opérations de service BLOB.For more information, see Setting Timeouts for Blob Service Operations.

En-têtes de requêteRequest Headers

Le tableau suivant décrit les en-têtes de demande obligatoires ou facultatifs.The following table describes required and optional request headers.

En-tête de requêteRequest Header DescriptionDescription
Authorization Obligatoire.Required. Spécifie le schéma d’autorisation, le nom de compte et la signature.Specifies the authorization scheme, account name, and signature. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
Date ou x-ms-dateDate or x-ms-date Obligatoire.Required. Spécifie la date/heure en temps universel coordonné (UTC) pour la requête.Specifies the Coordinated Universal Time (UTC) for the request. Pour plus d’informations, consultez autoriser les demandes dans le stockage Azure.For more information, see Authorize requests to Azure Storage.
x-ms-version Obligatoire pour toutes les demandes autorisées.Required for all authorized requests. Spécifie la version de l'opération à utiliser pour cette demande.Specifies the version of the operation to use for this request. Pour plus d’informations, consultez contrôle de version pour les services de stockage Azure.For more information, see Versioning for the Azure Storage Services.
x-ms-client-request-id facultatif.Optional. Fournit une valeur opaque générée par le client avec une limite de 1 Kio de caractères qui est enregistrée dans les journaux d’analyse lorsque la journalisation de l’analyse de stockage est activée.Provides a client-generated, opaque value with a 1 KiB character limit that is recorded in the analytics logs when storage analytics logging is enabled. L’utilisation de cet en-tête est fortement recommandée pour la mise en corrélation des activités côté client avec les requêtes reçues par le serveur.Using this header is highly recommended for correlating client-side activities with requests received by the server. Pour plus d’informations, consultez à propos de la journalisation des Storage Analytics et de la journalisation Azure : utilisation des journaux pour suivre les demandes de stockage.For more information, see About Storage Analytics Logging and Azure Logging: Using Logs to Track Storage Requests.

Corps de la demandeRequest Body

Aucun.None.

LutteResponse

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.The response includes an HTTP status code, a set of response headers, and a response body in XML format.

Code d’étatStatus Code

Une opération réussie envoie le code d'état 200 (OK).A successful operation returns status code 200 (OK).

Pour plus d’informations sur les codes d’État, consultez codes d’État et d’erreur.For information about status codes, see Status and Error Codes.

En-têtes de réponseResponse Headers

La réponse de l'opération inclut les en-têtes suivants.The response for this operation includes the following headers. La réponse peut également inclure des en-têtes HTTP standard supplémentaires.The response also includes additional standard HTTP headers. Tous les en-têtes standard sont conformes à la spécification du protocole HTTP/1.1.All standard headers conform to the HTTP/1.1 protocol specification.

En-tête de réponseResponse header DescriptionDescription
Content-Type En-tête HTTP/1.1 standard.Standard HTTP/1.1 header. Spécifie le format dans lequel les résultats sont renvoyés.Specifies the format in which the results are returned. Actuellement, cette valeur est application/xml.Currently, this value is 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.This header uniquely identifies the request that was made and can be used for troubleshooting the request. Pour plus d’informations, consultez Troubleshooting API Operations.For more information, see Troubleshooting API Operations.
x-ms-version Indique la version du service BLOB utilisée pour exécuter la demande.Indicates the version of the Blob service used to execute the request. Cet en-tête est renvoyé pour les demandes effectuées avec la version du 19/09/2009 et ultérieure.This header is returned for requests made against version 2009-09-19 and above.
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.A UTC date/time value generated by the service that indicates the time at which the response was initiated.
x-ms-client-request-id Cet en-tête peut être utilisé pour dépanner les demandes et les réponses correspondantes.This header can be used to troubleshoot requests and corresponding responses. La valeur de cet en-tête est égale à la valeur de l' x-ms-client-request-id en-tête si elle est présente dans la demande et que la valeur est supérieure à 1024 caractères ASCII visibles.The value of this header is equal to the value of the x-ms-client-request-id header if it is present in the request and the value is at most 1024 visible ASCII characters. Si l' x-ms-client-request-id en-tête n’est pas présent dans la demande, cet en-tête ne sera pas présent dans la réponse.If the x-ms-client-request-id header is not present in the request, this header will not be present in the response.

Corps de la réponseResponse Body

Le format du corps de la réponse est le suivant.The format of the response body is as follows.

<?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>  
      <Version>container-version</Version>
      <Deleted>true</Deleted>
      <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> 
        <PublicAccess>container | blob</PublicAccess>
        <HasImmutabilityPolicy>true | false</HasImmutabilityPolicy>
        <HasLegalHold>true | false</HasLegalHold>
        <DeletedTime>datetime</DeletedTime>
        <RemainingRetentionDays>no-of-days</RemainingRetentionDays>
      </Properties>  
      <Metadata>  
        <metadata-name>value</metadata-name>  
      </Metadata>  
    </Container>  
  </Containers>  
  <NextMarker>marker-value</NextMarker>  
</EnumerationResults>  

LeaseStatus, LeaseState et LeaseDuration apparaissent uniquement dans la version du 12/02/2012 et ultérieure.LeaseStatus, LeaseState, and LeaseDuration only appear in version 2012-02-12 and later.

À compter de la version du 15/08/2013, l'attribut AccountName de l'élément EnumerationResults a été renommé ServiceEndpoint.Beginning with version 2013-08-15, the AccountName attribute for the EnumerationResults element has been renamed to ServiceEndpoint. L'élément URL a également été supprimé de l'élément Container.The URL element has also been removed from the Container element. Pour les versions antérieures, l'URL du conteneur, indiquée par le champ URL, n'inclut pas le paramètre restype=container.For versions prior to 2013-08-15, the container's URL, as specified by the URL field, does not include the restype=container parameter. 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.If you use this value to make subsequent requests against the enumerated containers, be sure to append this parameter to indicate that the resource type is a container.

Les éléments Prefix, Marker et MaxResults sont uniquement présents s'ils ont été spécifiés dans l'URI.The Prefix, Marker, and MaxResults elements are only present if they were specified on the URI. L'élément NextMarker a une valeur uniquement si les résultats de liste ne sont pas terminés.The NextMarker element has a value only if the list results are not complete.

L'élément Metadata peut être présent uniquement si le paramètre include=metadata a été spécifié dans l'URI.The Metadata element is present only if the include=metadata parameter was specified on the URI. Dans l'élément Metadata, la valeur de chaque paire nom-valeur est indiquée dans un élément correspondant au nom de la paire.Within the Metadata element, the value of each name-value pair is listed within an element corresponding to the pair's name.

Si une paire nom-valeur de métadonnées viole les restrictions d'attribution de noms imposées par la version du 19/09/2009, le corps de la réponse indique le nom problématique dans un élément x-ms-invalid-name, comme indiqué dans le fragment XML suivant :If a metadata name-value pair violates the naming restrictions enforced by the 2009-09-19 version, the response body indicates the problematic name within an x-ms-invalid-name element, as shown in the following XML fragment:

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

À partir de la version 2016-05-31, les autorisations publiques du conteneur sont fournies dans la propriété PublicAccess.Beginning with the 2016-05-31 version, the container public permissions will be provided in the PublicAccess property. Elle indique si les données du conteneur sont accessibles publiquement et le niveau d’accès.It indicates whether data in the container may be accessed publicly and the level of access. Les valeurs possibles incluent :Possible values include:

  • conteneur : indique un accès en lecture public complet pour les données de conteneur et d’objet BLOB.container: Indicates full public read access for container and blob data. Les clients peuvent énumérer les objets blob à l’intérieur du conteneur via une demande anonyme, mais ne peuvent pas énumérer les conteneurs dans le compte de stockage.Clients can enumerate blobs within the container via anonymous request, but cannot enumerate containers within the storage account.
  • BLOB : indique un accès en lecture public pour les objets BLOB.blob: Indicates public read access for blobs. Les données d'objets blob à l'intérieur de ce conteneur peuvent être lues via une demande anonyme, mais les données du conteneur ne sont pas disponibles.Blob data within this container can be read via anonymous request, but container data is not available. Les clients ne peuvent pas énumérer les objets blob à l'intérieur du conteneur via une demande anonyme.Clients cannot enumerate blobs within the container via anonymous request.

Si cette propriété n’est pas spécifiée dans leIf this property is not specified in the , le conteneur est privé pour le propriétaire du compte.section, the container is private to the account owner.

HasImmutabilityPolicy et HasLegalHold apparaissent uniquement dans la version 2017-11-09 et les versions ultérieures.HasImmutabilityPolicy and HasLegalHold only appear in version 2017-11-09 and later. HasImmutabilityPolicy``truesi le conteneur a une stratégie d’immuabilité définie, false sinon.HasImmutabilityPolicy is true if the container has an immutability policy set on it, false otherwise. HasLegalHold indique true si le conteneur a une ou plusieurs conservations légales sur celui-ci ; false sinon,.HasLegalHold is true if the container has one or more legal hold(s) on it, false otherwise.

Notes

À partir de la version du 19/09/2009, le corps de la réponse pour List Containers retourne l'heure de la dernière modification du conteneur dans un élément nommé Last-Modified.Beginning with version 2009-09-19, the response body for List Containers returns the container's last modified time in an element named Last-Modified. Dans les versions précédentes, cet élément était nommé LastModified.In previous versions, this element was named LastModified.

Les Version Deleted éléments,, DeletedTime et RemainingRetentiondays apparaissent uniquement dans la version 2019-12-12 et les versions ultérieures si la deleted valeur est spécifiée pour le paramètre de requête include et si le conteneur est supprimé de manière réversible et éligible à la restauration.The Version, Deleted, DeletedTime, and RemainingRetentiondays elements only appear in version 2019-12-12 and later if the deleted value is specified for the query parameter include and the container is soft deleted and eligible to be restored.

L'Authorization

Seul le propriétaire du compte peut appeler cette opération.Only the account owner may call this operation.

RemarquesRemarks

Si vous spécifiez une valeur pour le maxresults paramètre et que le nombre de conteneurs à retourner dépasse cette valeur, ou dépasse la valeur par défaut pour maxresults , le corps de la réponse contiendra l' NextMarker élément (également appelé jeton de continuation).If you specify a value for the maxresults parameter and the number of containers to return exceeds this value, or exceeds the default value for maxresults, the response body will contain the NextMarker element (also referred to as a continuation token). NextMarker indique le conteneur suivant à retourner lors d’une requête suivante.NextMarker indicates the next container to return on a subsequent request. Pour retourner l’ensemble d’éléments suivant, spécifiez la valeur de NextMarker pour le marker paramètre sur l’URI pour la demande suivante.To return the next set of items, specify the value of NextMarker for the marker parameter on the URI for the subsequent request. Notez que la valeur de NextMarker doit être traitée comme opaque.Note that the value of NextMarker should be treated as opaque.

Si l’opération de listage franchit une limite de partition, le service retourne une valeur pour l' NextMarker élément afin de récupérer le reste des résultats de la partition suivante.If the listing operation crosses a partition boundary, then the service will return a value for the NextMarker element for retrieving the remainder of the results from the next partition. Une opération de listage qui s’étend sur plusieurs partitions entraîne un plus petit ensemble d’éléments retournés que le nombre spécifié par maxresults , ou la valeur par défaut de 5000.A listing operation that spans more than one partition results in a smaller set of items being returned than is specified by maxresults, or than the default of 5000. Votre application doit toujours vérifier la présence de l' NextMarker élément lorsque vous effectuez une opération de liste, et la gérer en conséquence.Your application should always check for the presence of the NextMarker element when you perform a listing operation, and handle it accordingly.

Les conteneurs sont répertoriés par ordre alphabétique dans le corps de la réponse.Containers are listed in alphabetical order in the response body.

L'opération List Containers expire après 30 secondes.The List Containers operation times out after 30 seconds.

Exemple de demande et de réponseSample Request and Response

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.The following sample URI requests the list of containers for an account, setting the maximum results to return for the initial operation to 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 :The request is sent with these headers:

x-ms-version: 2016-05-31  
x-ms-date: Wed, 26 Oct 2016 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 :The status code and response headers are returned as follows:

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

Le code XML de réponse pour cette demande est le suivant :The response XML for this request is as follows. Notez que l'élément NextMarker suit l'ensemble de conteneurs et comprend le nom du conteneur suivant à renvoyer.Note that the NextMarker element follows the set of containers and includes the name of the next container to be returned.

<?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, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C6B1B2</Etag> 
        <PublicAccess>container</PublicAccess> 
      </Properties>  
    </Container>  
    <Container>  
      <Name>images</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C1EEEC</Etag>  
      </Properties>  
    </Container>  
    <Container>  
      <Name>textfiles</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 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.The subsequent list operation specifies the marker on the request URI, as follows. L'ensemble suivant de résultats est retourné en commençant par le conteneur spécifié par le marqueur.The next set of results is returned beginning with the container specified by the marker.

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

Voir aussiSee also

Autoriser les demandes au stockage Azure Authorize requests to Azure Storage
Codes d’État et d’erreur Status and Error Codes
Codes d’erreur du service BLOB Blob Service Error Codes
Énumération des ressources d’objets BLOB Enumerating Blob Resources
Utilisation de l’émulateur de stockage Azure pour le développement et le test Using the Azure Storage Emulator for Development and Testing
Définition de délais d'expiration pour les opérations du service BLOBSetting Timeouts for Blob Service Operations