List Blobs

L'operazione List Blobs restituisce un elenco dei BLOB nel contenitore specificato.

Richiesta

È possibile costruire la List Blobs richiesta come indicato di seguito. È consigliato il protocollo HTTPS. Sostituire myaccount con il nome dell'account di archiviazione.

Metodo URI richiesta Versione HTTP
GET https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list HTTP/1.1

URI del servizio di archiviazione emulato

Quando si effettua una richiesta per il servizio di archiviazione emulato, specificare il nome host dell'emulatore e Archiviazione BLOB di Azure porta come 127.0.0.1:10000, seguito dal nome dell'account di archiviazione emulato.

Metodo URI richiesta Versione HTTP
GET http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=list HTTP/1.1

Per altre informazioni, vedere Usare l'emulatore Azurite per lo sviluppo locale di Archiviazione di Azure.

Parametri URI

È possibile specificare i parametri aggiuntivi seguenti nell'URI.

Parametro Descrizione
prefix Facoltativa. Filtra i risultati per restituire solo BLOB con nomi che iniziano con il prefisso specificato. Negli account con uno spazio dei nomi gerarchico, si verificherà un errore nei casi in cui il nome di un file viene visualizzato al centro del percorso del prefisso. Ad esempio, è possibile tentare di trovare i BLOB denominati readmefile.txt usando il percorso folder1/folder2/readme/readmefile.txtdel prefisso . Se una sottocartella contiene un file denominato readme, verrà visualizzato un errore.
delimiter facoltativo. Quando la richiesta include questo parametro, l'operazione restituisce un BlobPrefix elemento nel corpo della risposta. Questo elemento funge da segnaposto per tutti i BLOB con nomi che iniziano con la stessa sottostringa, fino all'aspetto del carattere delimitatore. Il delimitatore può essere un singolo carattere o una stringa.
marker facoltativo. Valore stringa che identifica la parte dell'elenco da restituire con l'operazione elenco successiva. L'operazione restituisce un valore marcatore all'interno del corpo della risposta se l'elenco restituito non è completo. È quindi possibile usare il valore del marcatore in una chiamata successiva per richiedere il set successivo di elementi di elenco.

Il valore marcatore risulta opaco al client.
maxresults facoltativo. Specifica il numero massimo di BLOB da restituire, inclusi tutti gli elementi BlobPrefix. Se la richiesta non specifica maxresultso specifica un valore maggiore di 5.000, il server restituirà fino a 5.000 elementi. Se sono presenti risultati aggiuntivi da restituire, il servizio restituisce un token di continuazione nell'elemento NextMarker di risposta. In alcuni casi, il servizio potrebbe restituire un numero inferiore di risultati rispetto a specificato da maxresultse restituire anche un token di continuazione.

L'impostazione di maxresults su un valore minore o uguale a zero restituisce il codice di risposta 400 (Richiesta non valida).
include={snapshots,metadata,uncommittedblobs,copy,deleted,tags,versions,
deletedwithversions,immutabilitypolicy,legalhold,permissions}
facoltativo. Specifica uno o più set di dati da includere nella risposta:

- snapshots: specifica che gli snapshot devono essere inclusi nell'enumerazione . Gli snapshot vengono elencati dal meno recente al più recente nella risposta.
- metadata: specifica che i metadati del BLOB devono essere restituiti nella risposta.
- uncommittedblobs: specifica che i BLOB per i quali sono stati caricati i blocchi, ma che non sono stati sottoposti a commit tramite Put Block List, devono essere inclusi nella risposta.
- copy: versione 2012-02-12 e successive. Specifica che i metadati correlati a qualsiasi operazione Copy Blob corrente o precedente devono essere inclusi nella risposta.
-deleted: versione 2017-07-29 e successive. Specifica che i BLOB eliminati soft devono essere inclusi nella risposta.
-tags: versione 2019-12-12 e successive. Specifica che i tag di indice BLOB definiti dall'utente devono essere inclusi nella risposta.
-versions: versione 2019-12-12 e successive. Specifica che le versioni dei BLOB devono essere incluse nell'enumerazione .
-deletedwithversions: versione 2020-10-02 e successive. Specifica che i BLOB eliminati con qualsiasi versione (attiva o eliminata) devono essere inclusi nella risposta. Gli elementi eliminati definitivamente vengono visualizzati nella risposta fino a quando non vengono elaborati da Garbage Collection. Usare il tag \<HasVersionsOnly\>e il valore true.
-immutabilitypolicy: versione 2020-06-12 e successive. Specifica che l'enumerazione deve includere i criteri di immutabilità fino alla data e la modalità dei criteri di immutabilità dei BLOB.
-legalhold: versione 2020-06-12 e successive. Specifica che l'enumerazione deve includere il blocco legale dei BLOB.
-permissions: versione 2020-06-12 e successive. Supportato solo per gli account con uno spazio dei nomi gerarchico abilitato. Se una richiesta include questo parametro, il proprietario, il gruppo, le autorizzazioni e l'elenco di controllo di accesso per i BLOB o le directory elencati verranno inclusi nell'enumerazione .

Per specificare più di una di queste opzioni nell'URI, è necessario separare ogni opzione con una virgola con codifica URL ("%82").
showonly={deleted,files,directories} facoltativo. Specifica uno di questi set di dati da restituire nella risposta:

-deleted:Opzionale. Versione 2020-08-04 e successive. Solo per gli account abilitati con lo spazio dei nomi gerarchico. Quando una richiesta include questo parametro, l'elenco contiene solo BLOB eliminati soft.When a request includes this parameter, the list contains soft-deleted BLOBs. Si noti che il fallback di autorizzazione ACL POSIX non è supportato per elencare i BLOB eliminati soft. Se include=deleted viene specificato anche , la richiesta non riesce con richiesta non valida (400).
-files:Opzionale. Versione 2020-12-06 e successive. Solo per gli account abilitati con lo spazio dei nomi gerarchico. Quando una richiesta include questo parametro, l'elenco contiene solo file.
-directories:Opzionale. Versione 2020-12-06 e successive. Solo per gli account abilitati con lo spazio dei nomi gerarchico. Quando una richiesta include questo parametro, l'elenco contiene solo directory.
timeout facoltativo. Il parametro timeout viene espresso in secondi. Per altre informazioni, vedere Impostazione dei timeout per le operazioni di archiviazione BLOB.

Intestazioni della richiesta

Nella seguente tabella vengono descritte le intestazioni di richiesta obbligatorie e facoltative.

Intestazione della richiesta Descrizione
Authorization Obbligatorio. Specifica lo schema di autorizzazione, il nome dell'account e la firma. Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
Date o x-ms-date Obbligatorio. Specifica la data per la richiesta nel fuso orario UTC (Coordinated Universal Time). Per altre informazioni, vedere Autorizzare le richieste ad Archiviazione di Azure.
x-ms-version Obbligatorio per tutte le richieste autorizzate e facoltativo per le richieste anonime. Specifica la versione dell'operazione da usare per questa richiesta. Per altre informazioni, vedere Controllo delle versioni per i servizi di archiviazione di Azure.
x-ms-client-request-id facoltativo. Fornisce un valore opaco generato dal client con un limite di caratteri di 1 kibibyte (KiB) registrato nei log al momento della configurazione della registrazione. È consigliabile usare questa intestazione per correlare le attività lato client alle richieste ricevute dal server. Per altre informazioni, vedere Monitorare Archiviazione BLOB di Azure.
x-ms-upn facoltativo. Valido solo quando uno spazio dei nomi gerarchico è abilitato per l'account e include=permissions viene fornito nella richiesta. Se true, i valori di identità utente restituiti nei <campi Proprietario>, <Gruppo> e <Acl> vengono trasformati dagli ID oggetto Microsoft Entra ai nomi delle entità utente. Se false, i valori vengono restituiti come ID oggetto Microsoft Entra. Il valore predefinito è false. Si noti che gli ID gruppo e oggetto applicazione non vengono convertiti perché non hanno nomi descrittivi univoci.

Testo della richiesta

Nessuno.

Richiesta di esempio

Vedere Enumerazione delle risorse BLOB per una richiesta di esempio.

Risposta

Nella risposta sono inclusi un codice di stato HTTP, un set di intestazioni di risposta e il corpo della risposta nel formato XML.

Codice stato

Un'operazione completata correttamente restituisce 200 (OK). Per informazioni sui codici di stato, vedere Codici di stato e di errore.

Intestazioni di risposta

Nella risposta per questa operazione sono incluse le intestazioni riportate di seguito; La risposta può includere anche intestazioni HTTP standard aggiuntive. Tutte le intestazioni standard sono conformi alla specifica del protocollo HTTP/1.1.

Intestazione risposta Descrizione
Content-Type Specifica il formato in cui vengono restituiti i risultati. Attualmente questo valore è application/xml.
x-ms-request-id Questa intestazione identifica in modo univoco la richiesta effettuata e può essere usata per la risoluzione dei problemi della richiesta. Per altre informazioni, vedere Risoluzione dei problemi relativi alle operazioni api.
x-ms-version Indica la versione di Archiviazione BLOB usata per eseguire la richiesta. Questa intestazione viene restituita per le richieste effettuate con la versione 2009-09-19 e successive.

Questa intestazione viene restituita anche per le richieste anonime, senza una versione specificata, se il contenitore è stato contrassegnato per l'accesso pubblico usando la versione 2009-09-19 di Archiviazione BLOB.
Date Valore di data/ora UTC che indica l'ora in cui è stata avviata la risposta. Il servizio genera questo valore.
x-ms-client-request-id È possibile usare questa intestazione per risolvere i problemi relativi alle richieste e alle risposte corrispondenti. Il valore di questa intestazione è uguale al valore dell'intestazione x-ms-client-request-id , se presente nella richiesta. Il valore è al massimo 1024 caratteri ASCII visibili. Se l'intestazione x-ms-client-request-id non è presente nella richiesta, questa intestazione non sarà presente nella risposta.

Corpo della risposta

Il formato della risposta XML è il seguente.

Gli elementi Prefix, Marker, MaxResults e Delimiter sono presenti solo se sono stati specificati nell'URI della richiesta. L'elemento NextMarker ha un valore solo se i risultati dell'elenco non sono completi.

Gli snapshot, i metadati del BLOB e i BLOB di cui non è stato eseguito il commit vengono inclusi nella risposta solo se sono stati specificati con il parametro include nell'URI della richiesta.

Nella versione 2009-09-19 e successive le proprietà del BLOB vengono incapsulate all'interno di un Properties elemento.

A partire dalla versione 2009-09-19, List Blobs restituisce gli elementi ridenominati seguenti nel corpo della risposta:

  • Last-Modified (in precedenza LastModified)

  • Content-Length (in precedenza Size)

  • Content-Type (in precedenza ContentType)

  • Content-Encoding (in precedenza ContentEncoding)

  • Content-Language (in precedenza ContentLanguage)

L'elemento Content-MD5 viene visualizzato per i BLOB creati con la versione 2009-09-19 e successive. Nella versione 2012-02-12 e successive Archiviazione BLOB calcola il Content-MD5 valore quando si carica un BLOB usando Put BLOB. L'archiviazione BLOB non calcola questo valore quando si crea un BLOB usando Put Block List. È possibile impostare in modo esplicito il Content-MD5 valore quando si crea il BLOB oppure chiamando le operazioni Put Block List o Set Blob Properties .

Per le versioni dalla versione 2009-09-19 e successive, ma prima della versione 2015-02-21, non è possibile chiamare List Blobs su un contenitore che include BLOB di accodamento. Il servizio restituisce il codice di stato 409 (Conflitto) se il risultato dell'elenco contiene un BLOB di accodamento.

LeaseState e LeaseDuration vengono visualizzati solo nella versione 2012-02-12 e successive.

CopyId, CopyStatus, CopySource, CopyProgress, CopyCompletionTime e CopyStatusDescription sono presenti nella versione 2012-02-12 e successive, quando questa operazione include il parametro include={copy}. Questi elementi non vengono visualizzati se questo BLOB non è mai stato la destinazione in un'operazione Copy Blob . Gli elementi non vengono visualizzati se questo BLOB è stato modificato dopo un'operazione completata Copy Blob , usando Set Blob Properties, Put Blobo Put Block List. Questi elementi non vengono visualizzati anche con un BLOB creato da Copy BLOB, prima della versione 2012-02-12.

Nella versione 2013-08-15 e successive l'elemento EnumerationResults contiene un ServiceEndpoint attributo che specifica l'endpoint BLOB. Questo elemento contiene anche un ContainerName campo che specifica il nome del contenitore. Nelle versioni precedenti questi due attributi sono stati combinati nel ContainerName campo . Anche nella versione 2013-08-15 e successive l'elemento Url in Blob è stato rimosso.

Per la versione 2015-02-21 e successive, List Blobs restituisce BLOB di tutti i tipi (BLOB in blocchi, pagine e BLOB di accodamento).

Per la versione 2015-12-11 e successive, List Blobs restituisce l'elemento ServerEncrypted . Questo elemento è impostato su true se i metadati blob e dell'applicazione sono completamente crittografati e false in caso contrario.

Per la versione 2016-05-31 e successive, List Blobs restituisce l'elemento IncrementalCopy per i BLOB di copia incrementale e gli snapshot, con il valore impostato su true.

Per la versione 2017-04-17 e successive, List Blobs restituisce l'elemento AccessTier se è stato impostato in modo esplicito un livello di accesso. Per un elenco dei livelli BLOB di pagine Premium consentiti, vedere Archiviazione Premium ad alte prestazioni e dischi gestiti per le macchine virtuali. Per gli account di archiviazione BLOB o per utilizzo generico v2, i valori validi sono Hot, Coole Archive. Se il BLOB si trova nello stato di riattivazione in sospeso, l'elemento ArchiveStatus viene restituito con uno dei valori validi (rehydrate-pending-to-hot, rehydrate-pending-to-coolo rehydrate-pending-to-cold). Per informazioni dettagliate sulla suddivisione in livelli BLOB in blocchi , vedere Livelli di archiviazione ad accesso frequente, ad accesso sporadico e archivio.

Per la versione 2017-04-17 e successive, List Blobs restituisce l'elemento AccessTierInferred negli account di archiviazione BLOB o per utilizzo generico v2. Se il BLOB in blocchi non ha il livello di accesso impostato, le informazioni sul livello vengono dedotte dalle proprietà dell'account di archiviazione e questo valore è impostato su true. Questa intestazione è presente solo se il livello viene dedotto dalla proprietà dell'account.

Per la versione 2017-04-17 e successive, List Blobs restituisce l'elemento AccessTierChangeTime negli account di archiviazione BLOB o per utilizzo generico v2. Viene restituito solo se il livello nel BLOB in blocchi è stato impostato. Per altre informazioni, vedere Rappresentazione dei valori di data e ora nelle intestazioni.

Per la versione 2017-07-29 e successive, Deleted, , e RemainingRetentionDays vengono visualizzate quando questa operazione include il include={deleted}DeletedTimeparametro . Questi elementi non vengono visualizzati se questo BLOB non è stato eliminato. Questi elementi vengono visualizzati per BLOB o snapshot eliminati con l'operazione DELETE , quando è stata abilitata la funzionalità di eliminazione temporanea. L'elemento Deleted è impostato su true per i BLOB e gli snapshot eliminati in modo leggero. Deleted-Time corrisponde all'ora in cui il BLOB è stato eliminato. RemainingRetentionDays indica il numero di giorni dopo i quali un BLOB eliminato temporaneamente viene eliminato definitivamente.

Per la versione 2017-11-09 e successive, Creation-Time restituisce il momento in cui è stato creato questo BLOB.

Per la versione 2019-02-02 e successive, List Blobs restituisce l'elemento CustomerProvidedKeySha256 se il BLOB è crittografato con una chiave fornita dal cliente. Il valore verrà impostato sull'hash SHA-256 della chiave usata per crittografare il BLOB. Inoltre, se l'operazione include il include={metadata} parametro e sono presenti metadati dell'applicazione in un BLOB crittografato con una chiave fornita dal cliente, l'elemento Metadata avrà un Encrypted="true" attributo . Questo attributo indica che il BLOB ha metadati che non possono essere decrittografati come parte dell'operazione List Blobs . Per accedere ai metadati per questi BLOB, chiamare Get Blob Properties (Recupera proprietà BLOB ) o Get BLOB Metadata (Recupera metadati BLOB ) con la chiave fornita dal cliente.

Per la versione 2019-02-02 e successive, List Blobs restituisce l'elemento EncryptionScope se il BLOB è crittografato con un ambito di crittografia. Il valore verrà impostato sul nome dell'ambito di crittografia usato per crittografare il BLOB. Se l'operazione include il include={metadata} parametro , i metadati dell'applicazione nel BLOB vengono decrittografati in modo trasparente e disponibili nell'elemento Metadata .

Per la versione 2019-12-12 e successive, List Blobs restituisce l'elemento RehydratePriority negli account di archiviazione BLOB o per utilizzo generico v2, se l'oggetto rehydrate pending è nello stato . I valori validi sono High e Standard.

Per la versione 2019-12-12 e successive, List Blobs restituisce l'elemento VersionId per i BLOB e le versioni blob generate, quando il controllo delle versioni è abilitato nell'account.

Per la versione 2019-12-12 e successive, List Blobs restituisce l'elemento IsCurrentVersion per la versione corrente del BLOB. Il valore è impostato su true. Questo elemento consente di distinguere la versione corrente dalle versioni generate automaticamente in sola lettura.

Per la versione 2019-12-12 e successive, List Blobs restituisce l'elemento TagCount per i BLOB con i tag. L'elemento Tags viene visualizzato solo quando questa operazione include il include={tags} parametro . Questi elementi non vengono visualizzati se non sono presenti tag nel BLOB.

Per la versione 2019-12-12 e successive, List Blobs restituisce l'elemento Sealed per i BLOB di accodamento. L'elemento Sealed viene visualizzato solo quando il BLOB di accodamento è stato bloccato. Questi elementi non vengono visualizzati se il BLOB di accodamento non è sealed.

Per la versione 2020-02-10 e successive, List Blobs restituisce l'elemento LastAccessTime . L'elemento mostra quando è stato eseguito l'ultimo accesso ai dati del BLOB, in base ai criteri di rilevamento dell'ora dell'ultimo accesso dell'account di archiviazione. L'elemento non viene restituito se l'account di archiviazione non dispone di questo criterio o il criterio è disabilitato. Per informazioni sull'impostazione dei criteri di rilevamento dell'ora dell'ultimo accesso dell'account, vedere l'API del servizio BLOB. L'elemento LastAccessTime non tiene traccia dell'ultima volta in cui si accede ai metadati del BLOB.

Per la versione 2020-06-12 e successive, List Blobs restituisce gli ImmutabilityPolicyUntilDate elementi e ImmutabilityPolicyMode , quando questa operazione include il include={immutabilitypolicy} parametro .

Per la versione 2020-06-12 e successive, List Blobs restituisce l'elemento LegalHold , quando questa operazione include il include={legalhold} parametro .

Per la versione 2020-06-12 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce gli Ownerelementi , Group, Permissionse Acl . La richiesta deve contenere il include={permissions} parametro . Si noti che l'elemento Acl è un elenco combinato di elenchi di controllo di accesso e di accesso predefiniti impostati nel file o nella directory.

Per la versione 2020-06-12 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs con un delimitatore restituisce l'elemento Properties nell'elemento BlobPrefix . Corrisponde alle proprietà della directory.

Per la versione 2020-08-04 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce l'elemento DeletionId per i BLOB eliminati. DeletionId è un identificatore a 64 bit senza segno. L'elemento identifica in modo univoco un percorso eliminato temporaneamente, per distinguerlo da altri BLOB eliminati con lo stesso percorso.

Per la versione 2020-10-02 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce l'elemento ResourceType della proprietà per il percorso. Può essere file o directory.

Per la versione 2021-02-12 e successive, List Blobs verrà codificata in percentuale (per RFC 2396) tutti i BlobName valori degli elementi o BlobPrefixName . In particolare, verrà eseguita questa operazione per i valori che contengono caratteri non validi in XML (U+FFFE o U+FFFFFF). Se codificato, l'elemento Name includerà un Encoded=true attributo. Si noti che questo si verifica solo per i valori di Name elemento contenenti i caratteri non validi in XML, non per gli elementi rimanenti Name nella risposta.

Per la versione 2021-06-08 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce l'elemento Placeholder properties. Restituisce questo elemento nell'elemento BlobPrefix per le directory segnaposto, quando si elencano i BLOB eliminati con un delimitatore. Queste directory segnaposto esistono per facilitare la navigazione ai BLOB eliminati soft.

Per la versione 2021-06-08 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce l'elemento EncryptionContext . Se il valore della proprietà del contesto di crittografia è impostato, restituirà il valore impostato.

Per la versione 2020-02-10 e successive, per gli account con uno spazio dei nomi gerarchico abilitato, List Blobs restituisce l'elemento Expiry-Time per i BLOB eliminati. Expiry-Time è l'ora in cui il file scadrà e viene restituito per il file se la scadenza è impostata sullo stesso.

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="http://myaccount.blob.core.windows.net/"  ContainerName="mycontainer">  
  <Prefix>string-value</Prefix>  
  <Marker>string-value</Marker>  
  <MaxResults>int-value</MaxResults>  
  <Delimiter>string-value</Delimiter>  
  <Blobs>  
    <Blob>  
      <Name>blob-name</name>  
      <Snapshot>date-time-value</Snapshot>  
      <VersionId>date-time-vlue</VersionId>
      <IsCurrentVersion>true</IsCurrentVersion>
      <Deleted>true</Deleted>
      <Properties> 
        <Creation-Time>date-time-value</Creation-Time>
        <Last-Modified>date-time-value</Last-Modified>  
        <Etag>etag</Etag>
        <Owner>owner user id</Owner>
        <Group>owning group id</Group>
        <Permissions>permission string</Permissions>
        <Acl>access control list</Acl>
        <ResourceType>file | directory</ResourceType>
        <Placeholder>true</Placeholder>
        <Content-Length>size-in-bytes</Content-Length>  
        <Content-Type>blob-content-type</Content-Type>  
        <Content-Encoding />  
        <Content-Language />  
        <Content-MD5 />  
        <Cache-Control />  
        <x-ms-blob-sequence-number>sequence-number</x-ms-blob-sequence-number>  
        <BlobType>BlockBlob|PageBlob|AppendBlob</BlobType>  
        <AccessTier>tier</AccessTier>  
        <LeaseStatus>locked|unlocked</LeaseStatus>  
        <LeaseState>available | leased | expired | breaking | broken</LeaseState>  
        <LeaseDuration>infinite | fixed</LeaseDuration>  
        <CopyId>id</CopyId>  
        <CopyStatus>pending | success | aborted | failed </CopyStatus>  
        <CopySource>source url</CopySource>  
        <CopyProgress>bytes copied/bytes total</CopyProgress>  
        <CopyCompletionTime>datetime</CopyCompletionTime>  
        <CopyStatusDescription>error string</CopyStatusDescription>  
        <ServerEncrypted>true</ServerEncrypted> 
        <CustomerProvidedKeySha256>encryption-key-sha256</CustomerProvidedKeySha256>
        <EncryptionContext>encryption-context<EncryptionContext>
        <EncryptionScope>encryption-scope-name</EncryptionScope>
        <IncrementalCopy>true</IncrementalCopy>
        <AccessTierInferred>true</AccessTierInferred>
        <AccessTierChangeTime>datetime</AccessTierChangeTime>
        <DeletedTime>datetime</DeletedTime>
        <RemainingRetentionDays>no-of-days</RemainingRetentionDays>
        <TagCount>number of tags between 1 to 10</TagCount>
        <RehydratePriority>rehydrate priority</RehydratePriority>
        <Expiry-Time>date-time-value</Expiry-Time>
      </Properties>  
      <Metadata>     
        <Name>value</Name>  
      </Metadata>  
      <Tags>
          <TagSet>
              <Tag>
                  <Key>TagName</Key>
                  <Value>TagValue</Value>
              </Tag>
          </TagSet>
      </Tags>
      <OrMetadata />
    </Blob>  
    <BlobPrefix>  
      <Name>blob-prefix</Name>  
    </BlobPrefix>  
  </Blobs>  
  <NextMarker />  
</EnumerationResults>  

Risposta di esempio

Vedere Enumerazione delle risorse BLOB per una risposta di esempio.

Autorizzazione

L'autorizzazione è necessaria quando si chiama un'operazione di accesso ai dati in Archiviazione di Azure. È possibile autorizzare l'operazione List Blobs come descritto di seguito.

Archiviazione di Azure supporta l'uso di Microsoft Entra ID per autorizzare le richieste ai dati BLOB. Con Microsoft Entra ID è possibile usare il controllo degli accessi in base al ruolo di Azure per concedere le autorizzazioni a un'entità di sicurezza. L'entità di sicurezza può essere un utente, un gruppo, un'entità servizio applicazione o un'identità gestita di Azure. L'entità di sicurezza viene autenticata da Microsoft Entra ID per restituire un token OAuth 2.0. Il token può quindi essere usato per autorizzare una richiesta relativa al servizio BLOB.

Per altre informazioni sull'autorizzazione tramite Microsoft Entra ID, vedere Autorizzare l'accesso ai BLOB usando Microsoft Entra ID.

Autorizzazioni

Di seguito è riportata l'azione controllo degli accessi in base al ruolo necessaria per un utente, un gruppo o un'entità servizio di Microsoft Entra per chiamare l'operazione List Blobs e il ruolo controllo degli accessi in base al ruolo di Azure con privilegi minimi che include questa azione:

Per altre informazioni sull'assegnazione dei ruoli tramite il controllo degli accessi in base al ruolo di Azure, vedere Assegnare un ruolo di Azure per l'accesso ai dati BLOB.

Commenti

Proprietà del BLOB nella risposta

Se è stato richiesto che i BLOB di cui non è stato eseguito il commit vengano inclusi nell'enumerazione, si noti che alcune proprietà non vengono impostate finché non viene eseguito il commit del BLOB. Alcune proprietà potrebbero non essere restituite nella risposta.

L'elemento x-ms-blob-sequence-number viene restituito solo per i BLOB di pagine.

L'elemento OrMetadata viene restituito solo per i BLOB in blocchi.

Per i BLOB di pagine, il valore restituito nell'elemento Content-Length corrisponde al valore dell'intestazione x-ms-blob-content-length del BLOB.

L'elemento Content-MD5 viene visualizzato nel corpo della risposta, solo se è stato impostato nel BLOB usando la versione 2009-09-19 o successiva. È possibile impostare la Content-MD5 proprietà quando viene creato il BLOB o chiamando Imposta proprietà BLOB. Nella versione 2012-02-12 e successive imposta Put Blob il valore MD5 di un BLOB in blocchi, anche quando la Put Blob richiesta non include un'intestazione MD5.

Metadati nella risposta

L'elemento Metadata è presente solo se il parametro include=metadata è stato specificato nell'URI. Nell'elemento Metadata il valore di ogni coppia nome-valore è elencato in un elemento corrispondente al nome della coppia.

Si noti che i metadati richiesti con questo parametro devono essere archiviati in conformità alle restrizioni di denominazione imposte dalla versione 2009-09-19 di Archiviazione BLOB. A partire da questa versione, tutti i nomi dei metadati devono rispettare le convenzioni di denominazione per gli identificatori C#.

Se una coppia nome-valore dei metadati viola queste restrizioni di denominazione, il corpo della risposta indica il nome problematico all'interno di un x-ms-invalid-name elemento. Il frammento XML seguente mostra quanto segue:

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

Tag nella risposta

L'elemento Tags è presente solo se il include=tags parametro è stato specificato nell'URI e se sono presenti tag nel BLOB. All'interno dell'elemento TagSet vengono restituiti fino a 10 Tag elementi, ognuno contenente i key tag di indice BLOB definiti dall'utente e value . L'ordinamento dei tag non è garantito nella risposta.

Gli Tags elementi e TagCount non vengono restituiti se non sono presenti tag nel BLOB.

Il servizio di archiviazione mantiene una coerenza assoluta tra un BLOB e i relativi tag, ma l'indice secondario è infine coerente. I tag possono essere visibili in una risposta a List Blobs prima che siano visibili alle Find Blobs by Tags operazioni.

Snapshot nella risposta

Gli snapshot sono elencati nella risposta solo se il parametro include=snapshots è stato specificato nell'URI. Gli snapshot elencati nella risposta non includono l'elemento LeaseStatus , perché gli snapshot non possono avere lease attivi.

Usando la versione del servizio 2021-06-08 e successive, è possibile chiamare List Blobs con un delimitatore e includere snapshot nell'enumerazione . Per le versioni del servizio precedenti alla versione 2021-06-08, una richiesta che include entrambi restituisce un errore InvalidQueryParameter (codice di stato HTTP 400 - Richiesta non valida).

BLOB di cui non è stato eseguito il commit nella risposta

I BLOB di cui non è stato eseguito il commit sono elencati nella risposta solo se il parametro include=uncommittedblobs è stato specificato nell'URI. I BLOB di cui non è stato eseguito il commit elencati nella risposta non includono alcuno degli elementi seguenti:

  • Last-Modified

  • Etag

  • Content-Type

  • Content-Encoding

  • Content-Language

  • Content-MD5

  • Cache-Control

  • Metadata

BLOB eliminati nella risposta

I BLOB eliminati sono elencati nella risposta solo se il include=deleted parametro è stato specificato nell'URI. I BLOB eliminati elencati nella risposta non includono gli elementi Lease , perché i BLOB eliminati non possono avere lease attivi.

Gli snapshot eliminati sono inclusi nella risposta dell'elenco se include=deleted,snapshot è stato specificato nell'URI.

Metadati di replica degli oggetti nella risposta

L'elemento OrMetadata è presente quando un criterio di replica di oggetti è stato valutato in un BLOB e la List Blobs chiamata è stata effettuata usando la versione 2019-12-12 o successiva. Nell'elemento OrMetadata il valore di ogni coppia nome-valore è elencato in un elemento corrispondente al nome della coppia. Il formato del nome è or-{policy-id}_{rule-id}, dove {policy-id} è un GUID che rappresenta l'identificatore dei criteri di replica di oggetti nell'account di archiviazione. {rule-id} è un GUID che rappresenta l'identificatore della regola nel contenitore di archiviazione. I valori validi sono complete o failed.

  
…  
<OrMetadata>  
  <or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>complete</or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>  
  <or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>failed</or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>  
</OrMetadata>  
…  
  

Criteri di immutabilità nella risposta

Gli ImmutabilityPolicyUntilDate elementi e ImmutabilityPolicyMode sono presenti solo se il include=immutabilitypolicy parametro è stato specificato nell'URI.

<Properties> 
   <ImmutabilityPolicyUntilDate>date-time-value</ImmutabilityPolicyUntilDate>   
   <ImmutabilityPolicyMode>unlocked | locked </ImmutabilityPolicyMode>  
</Properties> 

L'elemento LegalHold è presente solo se il parametro include=legalhold è stato specificato nell'URI.

<Properties> 
  <LegalHold>true | false </LegalHold>  
</Properties> 

Restituzione di set di risultati tramite un valore marcatore

Se si specifica un valore per il maxresults parametro e il numero di BLOB da restituire supera questo valore o supera il valore predefinito per maxresults, il corpo della risposta contiene un NextMarker elemento . Questo elemento indica il BLOB successivo da restituire in una richiesta successiva. In alcuni casi, il servizio potrebbe restituire l'elemento NextMarker anche se il numero di risultati restituiti è minore del valore di maxresults.

Per restituire il set successivo di elementi, specificare il valore NextMarker come parametro marcatore nell'URI per la richiesta successiva. Si noti che il valore NextMarker deve essere considerato opaco.

Uso di un delimitatore per attraversare lo spazio dei nomi BLOB

Il parametro delimiter consente al chiamante di attraversare lo spazio dei nomi del BLOB utilizzando un delimitatore configurato dall'utente. In questo modo, è possibile attraversare una gerarchia virtuale di BLOB come se si trattasse di un file system. Il delimitatore può essere un singolo carattere o una stringa.

Se la richiesta include questo parametro, l'operazione restituisce un elemento BlobPrefix. L'elemento BlobPrefix viene restituito al posto di tutti i BLOB con nomi che iniziano con la stessa sottostringa, fino all'aspetto del carattere delimitatore. Il valore dell'elemento BlobPrefix è sottostringa+delimitatore, dove la sottostringa è la sottostringa comune che inizia uno o più nomi di BLOB e il delimitatore è il valore del delimiter parametro.

È possibile usare il valore di BlobPrefix per eseguire una chiamata successiva per elencare i BLOB che iniziano con questo prefisso. A tale scopo, specificare il valore di BlobPrefix per il prefix parametro nell'URI della richiesta.

Si noti che ogni elemento BlobPrefix ha restituito i conteggi fino al risultato massimo, proprio come ogni elemento Blob.

I BLOB sono elencati in ordine alfabetico nel corpo della risposta, con le lettere maiuscole elencate per prime.

Errori di copia nella descrizione dello stato di copia

In CopyStatusDescription sono contenute altre informazioni sull'errore Copy Blob.

  • Quando un tentativo di copia non riesce, CopyStatus viene impostato su pending se l'archiviazione BLOB sta ancora ritentando l'operazione. Il CopyStatusDescription testo descrive l'errore che potrebbe essersi verificato durante l'ultimo tentativo di copia.

  • Quando CopyStatus è impostato su failed, il testo CopyStatusDescription descrive l'errore che ha causato l'esito negativo dell'operazione di copia.

Nella tabella seguente vengono descritti i campi di ogni CopyStatusDescription valore.

Componente Descrizione
Codice di stato HTTP Intero a tre cifre standard che specifica l'errore.
Codice di errore Parola chiave che descrive l'errore. Viene fornito da Azure nell'elemento <ErrorCode> . Se non viene visualizzato alcun <elemento ErrorCode> , il servizio restituisce una parola chiave contenente il testo di errore standard associato al codice di stato HTTP a tre cifre nella specifica HTTP. Per altre informazioni, vedere Codici di errore comuni dell'API REST.
Informazioni Descrizione dettagliata dell'errore, tra virgolette.

La seguente tabella descrive i valori CopyStatus e CopyStatusDescription degli scenari di errore comuni.

Importante

Il testo della descrizione illustrato qui può cambiare senza avviso, anche senza alcuna modifica della versione. Non fare affidamento sulla corrispondenza di questo testo esatto.

Scenario Valore stato copia Valore Descrizione stato copia
Operazione di copia completata correttamente. esito positivo empty
L'utente ha interrotto l'operazione di copia prima del completamento. aborted empty
Si è verificato un errore durante la lettura dal BLOB di origine durante un'operazione di copia. L'operazione verrà ritentata. in sospeso 502 Gateway non valido "Errore non irreversibile durante la lettura dell'origine. Verrà effettuato un altro tentativo. Ora di errore: <tempo>"
Si è verificato un errore durante la scrittura nel BLOB di destinazione di un'operazione di copia. L'operazione verrà ritentata. in sospeso 500 InternalServerError "Errore non irreversibile. Verrà effettuato un altro tentativo. Ora di errore: <tempo>"
Si è verificato un errore irreversibile durante la lettura dal Blob di origine di un'operazione di copia. non riuscita 404 ResourceNotFound "Copia non riuscita durante la lettura dell'origine". Quando il servizio segnala questo errore sottostante, restituisce ResourceNotFound nell'elemento <ErrorCode> . Se nella risposta non è presente alcun <elemento ErrorCode> , viene visualizzata una rappresentazione di stringa standard dello stato HTTP, ad esempio NotFound.
Il periodo di timeout che limita tutte le operazioni di copia è trascorso. Attualmente il periodo di timeout è di due settimane. non riuscita 500 OperationCancelled "La copia ha superato il tempo massimo consentito".
Si sono verificati troppi errori durante la lettura dall'origine, pertanto non è stato raggiunto un rapporto minimo di tentativi rispetto alle operazioni completate. Questo timeout impedisce di riprovare un'origine molto scarsa in due settimane prima di non riuscire. non riuscita 500 OperationCancelled "Copia non riuscita durante la lettura dell'origine".

Fatturazione

Le richieste di prezzi possono derivare dai client che usano le API di archiviazione BLOB, direttamente tramite l'API REST dell'archiviazione BLOB o da una libreria client di Archiviazione di Azure. Queste richieste accumulano addebiti per transazione. Il tipo di transazione influisce sul modo in cui viene addebitato l'account. Ad esempio, le transazioni di lettura si accumulano in una categoria di fatturazione diversa rispetto alle transazioni di scrittura. Nella tabella seguente viene illustrata la categoria di fatturazione per List Blobs le richieste in base al tipo di account di archiviazione:

Operazione Tipo di account di archiviazione Categoria di fatturazione
List Blobs BLOB di blocchi Premium
Utilizzo generico v2 Standard
Utilizzo generico standard v1
Elencare e creare operazioni contenitore

Per informazioni sui prezzi per la categoria di fatturazione specificata, vedere prezzi Archiviazione BLOB di Azure.

Vedi anche

Stato e codici errore
Codici di errore dell'archiviazione BLOB