Blobs auflisten
Der vorgang List Blobs
gibt eine Liste der Blobs unter dem angegebenen Container zurück.
Bitten
Sie können die List Blobs
Anforderung wie folgt erstellen. HTTPS wird empfohlen. Ersetzen Sie myaccount durch den Namen Ihres Speicherkontos.
Methode | Anforderungs-URI | HTTP-Version |
---|---|---|
GET |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list |
HTTP/1.1 |
Emulierter Speicherdienst-URI
Wenn Sie eine Anforderung an den emulierten Speicherdienst stellen, geben Sie den Emulatorhost und den Azure Blob Storage-Port als 127.0.0.1:10000
an, gefolgt vom emulierten Speicherkontonamen.
Methode | Anforderungs-URI | HTTP-Version |
---|---|---|
GET |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=list |
HTTP/1.1 |
Weitere Informationen finden Sie unter Verwenden des Azurite-Emulators für die lokale Azure Storage-Entwicklung.
URI-Parameter
Sie können die folgenden zusätzlichen Parameter für den URI angeben.
Parameter | Beschreibung |
---|---|
prefix |
Wahlfrei. Filtert die Ergebnisse, um nur Blobs mit Namen zurückzugeben, die mit dem angegebenen Präfix beginnen. Bei Konten mit einem hierarchischen Namespace tritt ein Fehler in Fällen auf, in denen der Name einer Datei in der Mitte des Präfixpfads angezeigt wird. Beispielsweise können Sie versuchen, Blobs zu finden, die readmefile.txt benannt sind, indem Sie den Präfixpfad folder1/folder2/readme/readmefile.txt verwenden. Wenn ein Unterordner eine Datei mit dem Namen readme enthält, wird ein Fehler angezeigt. |
delimiter |
Wahlfrei. Wenn die Anforderung diesen Parameter enthält, gibt der Vorgang ein BlobPrefix Element im Antworttext zurück. Dieses Element fungiert als Platzhalter für alle Blobs mit Namen, die mit derselben Teilzeichenfolge beginnen, bis zur Darstellung des Trennzeichens. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein. |
marker |
Wahlfrei. Ein Zeichenfolgenwert, der den Teil der Liste identifiziert, der mit dem nächsten Listenvorgang zurückgegeben werden soll. Der Vorgang gibt einen Markierungswert im Antworttext zurück, wenn die zurückgegebene Liste nicht abgeschlossen wurde. Anschließend können Sie den Markierungswert in einem nachfolgenden Aufruf verwenden, um den nächsten Satz von Listenelementen anzufordern. Der Markerwert ist für den Client nicht transparent. |
maxresults |
Wahlfrei. Gibt die maximale Anzahl von blobs an, die zurückgegeben werden sollen, einschließlich aller BlobPrefix Elemente. Wenn die Anforderung nicht maxresults angibt oder einen Wert größer als 5.000 angibt, gibt der Server bis zu 5.000 Elemente zurück. Wenn zusätzliche Ergebnisse zurückgegeben werden sollen, gibt der Dienst ein Fortsetzungstoken im NextMarker Antwortelement zurück. In bestimmten Fällen gibt der Dienst möglicherweise weniger Ergebnisse zurück als durch maxresults angegeben, und es wird auch ein Fortsetzungstoken zurückgegeben.Das Festlegen maxresults auf einen Wert kleiner oder gleich Null führt zu Fehlerantwortcode 400 (ungültige Anforderung). |
include={snapshots,metadata,uncommittedblobs,copy,deleted,tags,versions, deletedwithversions,immutabilitypolicy,legalhold,permissions} |
Wahlfrei. Gibt ein oder mehrere Datasets an, die in die Antwort eingeschlossen werden sollen: - snapshots : Gibt an, dass Momentaufnahmen in die Enumeration einbezogen werden sollen. Momentaufnahmen werden von der ältesten bis zur neuesten in der Antwort aufgelistet.- metadata : Gibt an, dass BLOB-Metadaten in der Antwort zurückgegeben werden.- uncommittedblobs : Gibt an, dass Blobs, für die Blöcke hochgeladen wurden, jedoch nicht mithilfe von Put Block Listin die Antwort einbezogen wurden.- copy : Version 2012-02-12 und höher. Gibt an, dass Metadaten, die sich auf aktuelle oder vorherige Copy Blob Operation beziehen, in die Antwort einbezogen werden sollen.- deleted : Version 2017-07-29 und höher. Gibt an, dass vorläufig gelöschte Blobs in die Antwort eingeschlossen werden sollen. - tags : Version 2019-12-12 und höher. Gibt an, dass benutzerdefinierte BLOB-Indextags in die Antwort eingeschlossen werden sollen. - versions : Version 2019-12-12 und höher. Gibt an, dass Versionen von Blobs in die Enumeration eingeschlossen werden sollen.- deletedwithversions : Version 2020-10-02 und höher. Gibt an, dass gelöschte Blobs mit allen Versionen (aktiv oder gelöscht) in die Antwort einbezogen werden sollen. Elemente, die Sie endgültig gelöscht haben, werden in der Antwort angezeigt, bis sie von der Garbage Collection verarbeitet werden. Verwenden Sie das Tag \<HasVersionsOnly\> und den Wert true . - immutabilitypolicy : Version 2020-06-12 und höher. Gibt an, dass die Enumeration die Unveränderlichkeitsrichtlinie bis zum Datum und den Unveränderlichkeitsrichtlinienmodus der Blobs enthalten soll.- legalhold : Version 2020-06-12 und höher. Gibt an, dass die Enumeration den rechtlichen Halteraum von Blobs enthalten soll.- permissions : Version 2020-06-12 und höher. Wird nur für Konten mit aktiviertem hierarchischen Namespace unterstützt. Wenn eine Anforderung diesen Parameter enthält, werden der Besitzer, die Gruppe, die Berechtigungen und die Zugriffssteuerungsliste für die aufgelisteten Blobs oder Verzeichnisse in die Enumeration aufgenommen. Um mehrere dieser Optionen für den URI anzugeben, müssen Sie jede Option durch ein URL-codiertes Komma ("%82") trennen. |
showonly={deleted,files,directories} |
Wahlfrei. Gibt einen dieser Datasets an, die in der Antwort zurückgegeben werden sollen: - deleted : Optional. Version 2020-08-04 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur vorläufig gelöschte Blobs. Beachten Sie, dass POSIX ACL-Autorisierungsfallback für die Auflistung vorläufig gelöschter Blobs nicht unterstützt wird. Wenn include=deleted auch angegeben ist, schlägt die Anforderung mit ungültiger Anforderung (400) fehl.- files : Optional. Version 2020-12-06 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur Dateien. - directories : Optional. Version 2020-12-06 und höher. Nur für Konten, die mit hierarchischem Namespace aktiviert sind. Wenn eine Anforderung diesen Parameter enthält, enthält die Liste nur Verzeichnisse. |
timeout |
Wahlfrei. Der parameter timeout wird in Sekunden ausgedrückt. Weitere Informationen finden Sie unter Festlegen von Timeouts für Blob Storage-Vorgänge. |
Anforderungsheader
In der folgenden Tabelle werden die erforderlichen und optionalen Anforderungsheader beschrieben.
Anforderungsheader | Beschreibung |
---|---|
Authorization |
Erforderlich. Gibt das Autorisierungsschema, den Kontonamen und die Signatur an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
Date oder x-ms-date |
Erforderlich. Gibt die koordinierte Weltzeit (UTC) für die Anforderung an. Weitere Informationen finden Sie unter Autorisieren von Anforderungen an Azure Storage. |
x-ms-version |
Erforderlich für alle autorisierten Anforderungen und optional für anonyme Anforderungen. Gibt die Version des Vorgangs an, der für diese Anforderung verwendet werden soll. Weitere Informationen finden Sie unter Versionsverwaltung für die Azure Storage-Dienste. |
x-ms-client-request-id |
Wahlfrei. Stellt einen vom Client generierten, undurchsichtigen Wert mit einem 1-Kibibyte-Zeichenlimit (KiB) bereit, der in den Protokollen aufgezeichnet wird, wenn die Protokollierung konfiguriert ist. Es wird dringend empfohlen, diesen Header zu verwenden, um clientseitige Aktivitäten mit Anforderungen zu korrelieren, die der Server empfängt. Weitere Informationen finden Sie unter Überwachen von Azure Blob Storage. |
x-ms-upn |
Wahlfrei. Nur gültig, wenn ein hierarchischer Namespace für das Konto aktiviert ist und include=permissions in der Anforderung bereitgestellt wird. Wenn true , werden die im <Owner>, <Group>zurückgegebenen Benutzeridentitätswerte und <Acl-> Felder von Microsoft Entra-Objekt-IDs in Benutzerprinzipalnamen transformiert. Wenn false , werden die Werte als Microsoft Entra-Objekt-IDs zurückgegeben. Der Standardwert ist false . Beachten Sie, dass Gruppen- und Anwendungsobjekt-IDs nicht übersetzt werden, da sie keine eindeutigen Anzeigenamen haben. |
Anforderungstext
Nichts.
Beispielanforderung
Eine Beispielanforderung finden Sie unter Aufzählen von BLOB-Ressourcen.
Antwort
Die Antwort enthält einen HTTP-Statuscode, eine Reihe von Antwortheadern und einen Antworttext im XML-Format.
Statuscode
Ein erfolgreicher Vorgang gibt den Statuscode 200 (OK) zurück. Informationen zu Statuscodes finden Sie unter Status- und Fehlercodes.
Antwortheader
Die Antwort für diesen Vorgang enthält die folgenden Header. Die Antwort kann auch zusätzliche, standardmäßige HTTP-Header enthalten. Alle Standardheader entsprechen der HTTP/1.1-Protokollspezifikation.
Antwortheader | Beschreibung |
---|---|
Content-Type |
Gibt das Format an, in dem die Ergebnisse zurückgegeben werden. Derzeit ist dieser Wert application/xml . |
x-ms-request-id |
Dieser Header identifiziert die anforderung eindeutig und kann für die Problembehandlung der Anforderung verwendet werden. Weitere Informationen finden Sie unter Problembehandlung für API-Vorgänge. |
x-ms-version |
Gibt die Version von Blob Storage an, die zum Ausführen der Anforderung verwendet wird. Dieser Header wird für Anforderungen zurückgegeben, die mit Version 2009-09-19 und höher vorgenommen wurden. Dieser Header wird auch für anonyme Anforderungen ohne angegebene Version zurückgegeben, wenn der Container mit der 2009-09-19-Version von Blob Storage für den öffentlichen Zugriff gekennzeichnet wurde. |
Date |
Ein UTC-Datums-/Uhrzeitwert, der die Uhrzeit angibt, zu der die Antwort initiiert wurde. Der Dienst generiert diesen Wert. |
x-ms-client-request-id |
Sie können diesen Header verwenden, um Anfragen und entsprechende Antworten zu behandeln. Der Wert dieses Headers ist gleich dem Wert des x-ms-client-request-id -Headers, wenn er in der Anforderung vorhanden ist. Der Wert beträgt höchstens 1024 sichtbare ASCII-Zeichen. Wenn der x-ms-client-request-id -Header in der Anforderung nicht vorhanden ist, ist dieser Header in der Antwort nicht vorhanden. |
Antworttext
Das Format der XML-Antwort lautet wie folgt.
Beachten Sie, dass die elemente Prefix
, Marker
, MaxResults
und Delimiter
nur vorhanden sind, wenn sie für den Anforderungs-URI angegeben wurden. Das NextMarker
-Element weist nur dann einen Wert auf, wenn die Listenergebnisse nicht abgeschlossen sind.
Momentaufnahmen, Blobmetadaten und nicht hinzugefügte Blobs werden nur in der Antwort eingeschlossen, wenn sie mit dem parameter include
für den Anforderungs-URI angegeben werden.
In Version 2009-09-19 und höher werden die Blobeigenschaften in einem Properties
-Element gekapselt.
Ab Version 2009-09-19 gibt List Blobs
die folgenden umbenannten Elemente im Antworttext zurück:
Last-Modified
(zuvorLastModified
)Content-Length
(zuvorSize
)Content-Type
(zuvorContentType
)Content-Encoding
(zuvorContentEncoding
)Content-Language
(zuvorContentLanguage
)
Das Content-MD5
-Element wird für Blobs angezeigt, die mit Version 2009-09-19 und höher erstellt wurden. In Version 2012-02-12 und höher berechnet Blob Storage den Content-MD5
Wert, wenn Sie ein Blob mithilfe von Put Blobhochladen. Blob Storage berechnet dies nicht, wenn Sie ein Blob mithilfe von Put Block Listerstellen. Sie können den Content-MD5
Wert explizit festlegen, wenn Sie das Blob erstellen, oder indem Sie die Put Block List oder Set Blob Properties-Vorgänge aufrufen.
Für Versionen von 2009-09-19 und höher können Sie jedoch vor Version 2015-02-21 keine List Blobs
für einen Container aufrufen, der Anfüge-Blobs enthält. Der Dienst gibt den Statuscode 409 (Conflict) zurück, wenn das Ergebnis der Auflistung ein Anfüge-BLOB enthält.
LeaseState
und LeaseDuration
werden nur in Version 2012-02-12 und höher angezeigt.
CopyId
, CopyStatus
, CopySource
, CopyProgress
, CopyCompletionTime
und CopyStatusDescription
werden nur in Version 2012-02-12 und höher angezeigt, wenn dieser Vorgang den parameter include={copy}
enthält. Diese Elemente werden nicht angezeigt, wenn dieses Blob nie das Ziel in einem Copy Blob
-Vorgang war. Die Elemente werden nicht angezeigt, wenn dieses Blob nach einem abgeschlossenen Copy Blob
Vorgang mithilfe von Set Blob Properties
, Put Blob
oder Put Block List
geändert wurde. Diese Elemente werden auch nicht mit einem blob angezeigt, der von Copy Bloberstellt wurde, bevor Version 2012-02-12.
In Version 2013-08-15 und höher enthält das EnumerationResults
-Element ein ServiceEndpoint
-Attribut, das den Blob-Endpunkt angibt. Dieses Element enthält auch ein ContainerName
Feld, das den Namen des Containers angibt. In früheren Versionen wurden diese beiden Attribute im feld ContainerName
kombiniert. Auch in Version 2013-08-15 und höher wurde das Url
Element unter Blob
entfernt.
Für Version 2015-02-21 und höher gibt List Blobs
Blobs aller Typen zurück (Block, Seite und Anfügen von Blobs).
Für Version 2015-12-11 und höher gibt List Blobs
das ServerEncrypted
-Element zurück. Dieses Element ist auf true
festgelegt, wenn die Blob- und Anwendungsmetadaten vollständig verschlüsselt sind und andernfalls false
.
Für Version 2016-05-31 und höher gibt List Blobs
das IncrementalCopy
Element für inkrementelle Kopierblobs und Momentaufnahmen zurück, wobei der Wert auf true
festgelegt ist.
Für Version 2017-04-17 und höher gibt List Blobs
das AccessTier
Element zurück, wenn eine Zugriffsebene explizit festgelegt wurde. Eine Liste der zulässigen Premium-Seiten-BLOB-Ebenen finden Sie unter Hochleistungs-Premiumspeicher und verwaltete Datenträger für VMs. Für Blob Storage- oder allgemeine v2-Konten sind gültige Werte Hot
, Cool
und Archive
. Wenn sich das Blob im ausstehenden Zustand des Rehydrats befindet, wird ArchiveStatus
Element mit einem der gültigen Werte zurückgegeben (rehydrate-pending-to-hot
, rehydrate-pending-to-cool
oder rehydrate-pending-to-cold
). Ausführliche Informationen zum Blockieren von BLOB-Ebenen finden Sie unter Hot-, Cool- und Archivspeicherebenen.
Für Version 2017-04-17 und höher gibt List Blobs
das AccessTierInferred
-Element für Blob Storage- oder allgemeine v2-Konten zurück. Wenn der Block-BLOB nicht über den Zugriffsebenensatz verfügt, werden Tierinformationen von den Eigenschaften des Speicherkontos abgeleitet, und dieser Wert wird auf true
festgelegt. Dieser Header ist nur vorhanden, wenn die Ebene von der Kontoeigenschaft abgeleitet wird.
Für Version 2017-04-17 und höher gibt List Blobs
das AccessTierChangeTime
-Element für Blob Storage- oder allgemeine v2-Konten zurück. Dies wird nur zurückgegeben, wenn die Leiste für block-BLOB jemals festgelegt wurde. Weitere Informationen finden Sie unter Darstellung von Datums-/Uhrzeitwerten in Kopfzeilen.
Für Version 2017-07-29 und höher werden Deleted
, DeletedTime
und RemainingRetentionDays
angezeigt, wenn dieser Vorgang den parameter include={deleted}
enthält. Diese Elemente werden nicht angezeigt, wenn dieses Blob nicht gelöscht wurde. Diese Elemente werden für Blobs oder Momentaufnahmen angezeigt, die mit dem DELETE
-Vorgang gelöscht werden, wenn das Feature für das vorläufige Löschen aktiviert wurde. Das Deleted
-Element wird auf true
für Blobs und Momentaufnahmen festgelegt, die vorläufig gelöscht werden.
Deleted-Time
entspricht dem Zeitpunkt, zu dem das Blob gelöscht wurde.
RemainingRetentionDays
gibt die Anzahl der Tage an, nach denen ein vorläufig gelöschtes Blob endgültig gelöscht wird.
Für Version 2017-11-09 und höher gibt Creation-Time
den Zeitpunkt zurück, zu dem dieses Blob erstellt wurde.
Für Version 2019-02-02 und höher gibt List Blobs
das CustomerProvidedKeySha256
-Element zurück, wenn das Blob mit einem vom Kunden bereitgestellten Schlüssel verschlüsselt ist. Der Wert wird auf den SHA-256-Hash des Schlüssels festgelegt, der zum Verschlüsseln des Blobs verwendet wird. Wenn der Vorgang den parameter include={metadata}
enthält und anwendungsmetadaten in einem blob vorhanden sind, der mit einem vom Kunden bereitgestellten Schlüssel verschlüsselt ist, verfügt das Metadata
-Element über ein Encrypted="true"
-Attribut. Dieses Attribut gibt an, dass das Blob Metadaten enthält, die nicht als Teil des List Blobs
-Vorgangs entschlüsselt werden können. Um auf die Metadaten für diese Blobs zuzugreifen, rufen Sie Get Blob Properties oder Get Blob Metadata mit dem vom Kunden bereitgestellten Schlüssel auf.
Für Version 2019-02-02 und höher gibt List Blobs
das EncryptionScope
-Element zurück, wenn das Blob mit einem Verschlüsselungsbereich verschlüsselt ist. Der Wert wird auf den Namen des Verschlüsselungsbereichs festgelegt, der zum Verschlüsseln des Blobs verwendet wird. Wenn der Vorgang den parameter include={metadata}
enthält, werden Anwendungsmetadaten im Blob transparent entschlüsselt und im Metadata
-Element verfügbar.
Für Version 2019-12-12 und höher gibt List Blobs
das RehydratePriority
Element für Blob Storage- oder allgemeine v2-Konten zurück, wenn sich das Objekt im rehydrate pending
Zustand befindet. Gültige Werte sind High
und Standard
.
Für Version 2019-12-12 und höher gibt List Blobs
das VersionId
-Element für Blobs und generierte BLOB-Versionen zurück, wenn die Versionsverwaltung für das Konto aktiviert ist.
Für Version 2019-12-12 und höher gibt List Blobs
das IsCurrentVersion
Element für die aktuelle Version des BLOB zurück. Der Wert wird auf true
festgelegt. Mit diesem Element können Sie die aktuelle Version von der schreibgeschützten, automatisch generierten Version unterscheiden.
Für Version 2019-12-12 und höher gibt List Blobs
das TagCount
-Element für Blobs mit beliebigen Tags zurück. Das Tags
-Element wird nur angezeigt, wenn dieser Vorgang den parameter include={tags}
enthält. Diese Elemente werden nicht angezeigt, wenn im Blob keine Tags vorhanden sind.
Für Version 2019-12-12 und höher gibt List Blobs
das Sealed
-Element für Anfügeblobs zurück. Das Sealed
-Element wird nur angezeigt, wenn das Anfügeblob versiegelt wurde. Diese Elemente werden nicht angezeigt, wenn das Anfüge-Blob nicht versiegelt ist.
Für Version 2020-02-10 und höher gibt List Blobs
das LastAccessTime
-Element zurück. Das Element zeigt an, wann auf die Daten des BLOB zuletzt zugegriffen wurde, entsprechend der Richtlinie für die Nachverfolgung der letzten Zugriffszeit des Speicherkontos. Das Element wird nicht zurückgegeben, wenn das Speicherkonto nicht über diese Richtlinie verfügt oder die Richtlinie deaktiviert ist. Informationen zum Festlegen der Richtlinie für die Nachverfolgung der letzten Zugriffszeit des Kontos finden Sie in der BLOB-Dienst-API. Das LastAccessTime
-Element verfolgt nicht das letzte Mal, wenn auf die Metadaten des Blobs zugegriffen wird.
Für Version 2020-06-12 und höher gibt List Blobs
die elemente ImmutabilityPolicyUntilDate
und ImmutabilityPolicyMode
zurück, wenn dieser Vorgang den parameter include={immutabilitypolicy}
enthält.
Für Version 2020-06-12 und höher gibt List Blobs
das LegalHold
-Element zurück, wenn dieser Vorgang den parameter include={legalhold}
enthält.
Für Konten mit aktiviertem hierarchischen Namespace gibt List Blobs
für Version 2020-06-12 und höher die elemente Owner
, Group
, Permissions
und Acl
zurück. Die Anforderung muss den include={permissions}
-Parameter enthalten. Beachten Sie, dass das Acl
-Element eine kombinierte Liste von Zugriffs- und Standardzugriffssteuerungslisten ist, die für die Datei oder das Verzeichnis festgelegt wurden.
Für Die Version 2020-06-12 und höher gibt List Blobs
für Konten mit aktiviertem hierarchischen Namespace das Properties
-Element im BlobPrefix
-Element zurück. Dies entspricht den Eigenschaften im Verzeichnis.
Für Version 2020-08-04 und höher gibt List Blobs
für Konten mit aktiviertem hierarchischen Namespace das DeletionId
-Element für gelöschte Blobs zurück.
DeletionId
ist ein nicht signierter 64-Bit-Bezeichner. Das Element identifiziert eindeutig einen vorläufig gelöschten Pfad, um ihn von anderen gelöschten Blobs mit demselben Pfad zu unterscheiden.
Für Konten mit aktiviertem hierarchischen Namespace gibt List Blobs
für Version 2020-10-02 und höher das ResourceType
Eigenschaftselement für den Pfad zurück. Dies kann entweder file
oder directory
sein.
Für Version 2021-02-12 und höher codiert List Blobs
alle Blob
Name
- oder BlobPrefix
Name
-Elementwerte (per RFC 2396) prozentverschlüsselt. Dies gilt insbesondere für Werte, die Zeichen enthalten, die in XML (U+FFFE oder U+FFFF) nicht gültig sind. Wenn dies codiert ist, enthält das Name
-Element ein Encoded=true
-Attribut. Beachten Sie, dass dies nur für die Name
Elementwerte erfolgt, die die in XML ungültigen Zeichen enthalten, nicht für die verbleibenden Name
Elemente in der Antwort.
Für Konten mit aktiviertem hierarchischen Namespace gibt List Blobs
für Version 2021-06-08 und höher das Placeholder
Eigenschaftenelement zurück. Es gibt dieses Element im BlobPrefix
-Element für Platzhalterverzeichnisse zurück, wenn gelöschte Blobs mit einem Trennzeichen aufgelistet werden. Diese Platzhalterverzeichnisse sind vorhanden, um die Navigation zu vorläufig gelöschten Blobs zu erleichtern.
Für Konten mit aktiviertem hierarchischen Namespace gibt List Blobs
für Version 2021-06-08 und höher das EncryptionContext
-Element zurück. Wenn der Wert der Verschlüsselungskontexteigenschaft festgelegt wird, wird der festgelegte Wert zurückgegeben.
Für Konten mit aktiviertem hierarchischen Namespace gibt List Blobs
für Version 2020-02-10 und höher das Expiry-Time
-Element für gelöschte Blobs zurück.
Expiry-Time
ist der Zeitpunkt, zu dem die Datei abläuft, und wird für die Datei zurückgegeben, wenn der Ablauf auf demselben festgelegt ist.
<?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>
Beispielantwort
Eine Beispielantwort finden Sie unter Aufzählen von BLOB-Ressourcen.
Ermächtigung
Die Autorisierung ist beim Aufrufen eines Datenzugriffsvorgangs in Azure Storage erforderlich. Sie können den List Blobs
Vorgang wie unten beschrieben autorisieren.
Wichtig
Microsoft empfiehlt die Verwendung der Microsoft Entra-ID mit verwalteten Identitäten, um Anforderungen an Azure Storage zu autorisieren. Die Microsoft Entra-ID bietet eine bessere Sicherheit und Benutzerfreundlichkeit im Vergleich zur Shared Key-Autorisierung.
Azure Storage unterstützt die Verwendung der Microsoft Entra-ID zum Autorisieren von Anforderungen an BLOB-Daten. Mit Der Microsoft Entra-ID können Sie azure role-based access control (Azure RBAC) verwenden, um Berechtigungen für einen Sicherheitsprinzipal zu erteilen. Der Sicherheitsprinzipal kann ein Benutzer, eine Gruppe, ein Anwendungsdienstprinzipal oder eine von Azure verwaltete Identität sein. Der Sicherheitsprinzipal wird von der Microsoft Entra-ID authentifiziert, um ein OAuth 2.0-Token zurückzugeben. Das Token kann dann verwendet werden, um eine Anforderung für den Blob-Dienst zu autorisieren.
Weitere Informationen zur Autorisierung mithilfe der Microsoft Entra-ID finden Sie unter Autorisieren des Zugriffs auf Blobs mithilfe von Microsoft Entra ID.
Erlaubnisse
Nachfolgend sind die RBAC-Aktion aufgeführt, die für einen Microsoft Entra-Benutzer, eine Gruppe, eine verwaltete Identität oder einen Dienstprinzipal erforderlich ist, um den List Blobs
Vorgang aufzurufen, und die integrierte Azure RBAC-Rolle, die diese Aktion enthält:
- Azure RBAC-Aktion:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- Rolle mit den geringsten Rechten:Storage Blob Data Reader
Wenn Sie include=tags
angeben:
- Azure RBAC-Aktion:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/read
- Rolle mit den geringsten Rechten:Storage Blob Data Owner
Weitere Informationen zum Zuweisen von Rollen mithilfe von Azure RBAC finden Sie unter Zuweisen einer Azure-Rolle für den Zugriff auf BLOB-Daten.
Bemerkungen
Blob-Eigenschaften in der Antwort
Wenn Sie angefordert haben, dass nicht freigegebene Blobs in die Enumeration einbezogen werden, beachten Sie, dass einige Eigenschaften erst festgelegt werden, wenn das Blob zugesichert wurde. Einige Eigenschaften werden in der Antwort möglicherweise nicht zurückgegeben.
Das x-ms-blob-sequence-number
-Element wird nur für Seitenblobs zurückgegeben.
Das OrMetadata
-Element wird nur für Blockblobs zurückgegeben.
Bei Seitenblobs entspricht der im Content-Length
-Element zurückgegebene Wert dem Wert des x-ms-blob-content-length
Headers des Blobs.
Das Content-MD5
-Element wird nur dann im Antworttext angezeigt, wenn es für das Blob mithilfe der Version 2009-09-19 oder höher festgelegt wurde. Sie können die eigenschaft Content-MD5
festlegen, wenn das Blob erstellt wird, oder indem Sie Set Blob Propertiesaufrufen. In Version 2012-02-12 und höher legt Put Blob
den MD5-Wert eines Block-Blobs fest, auch wenn die Put Blob
-Anforderung keinen MD5-Header enthält.
Metadaten in der Antwort
Das Metadata
-Element ist nur vorhanden, wenn der include=metadata
Parameter für den URI angegeben wurde. Innerhalb des Metadata
Elements wird der Wert jedes Namens-Wert-Paars innerhalb eines Elements aufgeführt, das dem Namen des Paares entspricht.
Beachten Sie, dass mit diesem Parameter angeforderte Metadaten gemäß den Benennungseinschränkungen gespeichert werden müssen, die von der 2009-09-19-Version von Blob Storage auferlegt werden. Ab dieser Version müssen alle Metadatennamen den Benennungskonventionen für C#-Bezeichnerentsprechen.
Wenn ein Metadatennamen-Wert-Paar gegen diese Benennungseinschränkungen verstößt, gibt der Antworttext den problematischen Namen innerhalb eines x-ms-invalid-name
Elements an. Das folgende XML-Fragment zeigt Folgendes:
…
<Metadata>
<MyMetadata1>first value</MyMetadata1>
<MyMetadata2>second value</MyMetadata2>
<x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>
</Metadata>
…
Tags in der Antwort
Das Tags
-Element ist nur vorhanden, wenn der include=tags
Parameter für den URI angegeben wurde und tags im Blob vorhanden sind. Innerhalb des TagSet
Elements werden bis zu 10 Tag
Elemente zurückgegeben, die jeweils die key
und value
der benutzerdefinierten Blobindextags enthalten. Die Sortierung von Tags wird in der Antwort nicht garantiert.
Die elemente Tags
und TagCount
werden nicht zurückgegeben, wenn keine Tags im Blob vorhanden sind.
Der Speicherdienst behält eine starke Konsistenz zwischen einem Blob und seinen Tags bei, der sekundäre Index ist jedoch letztendlich konsistent. Tags können in einer Antwort auf List Blobs
sichtbar sein, bevor sie für Find Blobs by Tags
Vorgänge sichtbar sind.
Momentaufnahmen in der Antwort
Momentaufnahmen werden nur dann in der Antwort aufgelistet, wenn der parameter include=snapshots
für den URI angegeben wurde. Momentaufnahmen, die in der Antwort aufgeführt sind, enthalten nicht das LeaseStatus
-Element, da Momentaufnahmen keine aktiven Leases haben können.
Mit der Dienstversion 2021-06-08 und höher können Sie List Blobs
mit einem Trennzeichen aufrufen und Momentaufnahmen in die Enumeration einschließen. Für Dienstversionen vor 2021-06-08 gibt eine Anforderung, die beide enthält, einen InvalidQueryParameter-Fehler zurück (HTTP-Statuscode 400 – Ungültige Anforderung).
Nicht ausgelassene Blobs in der Antwort
Nicht ausgelassene Blobs werden nur in der Antwort aufgelistet, wenn der parameter include=uncommittedblobs
für den URI angegeben wurde. Nicht ausgelassene Blobs, die in der Antwort aufgeführt sind, enthalten keines der folgenden Elemente:
Last-Modified
Etag
Content-Type
Content-Encoding
Content-Language
Content-MD5
Cache-Control
Metadata
Gelöschte Blobs in der Antwort
Gelöschte Blobs werden in der Antwort nur aufgeführt, wenn der parameter include=deleted
für den URI angegeben wurde. Gelöschte Blobs, die in der Antwort aufgeführt sind, enthalten nicht die Lease-Elemente, da gelöschte Blobs keine aktiven Leases haben können.
Gelöschte Momentaufnahmen werden in der Listenantwort eingeschlossen, wenn include=deleted,snapshot
für den URI angegeben wurde.
Objektreplikationsmetadaten in der Antwort
Das OrMetadata
-Element ist vorhanden, wenn eine Objektreplikationsrichtlinie für ein Blob ausgewertet wurde und der List Blobs
Aufruf mithilfe der Version 2019-12-12 oder höher erfolgt ist. Innerhalb des OrMetadata
Elements wird der Wert jedes Namens-Wert-Paars innerhalb eines Elements aufgeführt, das dem Namen des Paares entspricht. Das Format des Namens ist or-{policy-id}_{rule-id}
, wobei {policy-id}
eine GUID ist, die den Bezeichner der Objektreplikationsrichtlinie für das Speicherkonto darstellt.
{rule-id}
ist eine GUID, die den Regelbezeichner für den Speichercontainer darstellt. Gültige Werte sind complete
oder 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>
…
Unveränderlichkeitsrichtlinie in der Antwort
Die elemente ImmutabilityPolicyUntilDate
und ImmutabilityPolicyMode
sind nur vorhanden, wenn der parameter include=immutabilitypolicy
für den URI angegeben wurde.
<Properties>
<ImmutabilityPolicyUntilDate>date-time-value</ImmutabilityPolicyUntilDate>
<ImmutabilityPolicyMode>unlocked | locked </ImmutabilityPolicyMode>
</Properties>
Rechtliche Aufbewahrung in der Antwort
Das LegalHold
-Element ist nur vorhanden, wenn der include=legalhold
Parameter für den URI angegeben wurde.
<Properties>
<LegalHold>true | false </LegalHold>
</Properties>
Zurückgeben von Resultsets mithilfe eines Markerwerts
Wenn Sie einen Wert für den maxresults
-Parameter angeben und die Anzahl der zurückzugebenden Blobs diesen Wert überschreitet oder den Standardwert für maxresults
überschreitet, enthält der Antworttext ein NextMarker
Element. Dieses Element gibt das nächste BLOB an, das für eine nachfolgende Anforderung zurückgegeben werden soll. In bestimmten Fällen gibt der Dienst möglicherweise das NextMarker
-Element zurück, obwohl die Anzahl der zurückgegebenen Ergebnisse kleiner als der Wert von maxresults
ist.
Um den nächsten Satz von Elementen zurückzugeben, geben Sie den Wert NextMarker
als Markerparameter für den URI für die nachfolgende Anforderung an. Beachten Sie, dass der Wert von NextMarker
als undurchsichtig behandelt werden sollte.
Verwenden eines Trennzeichens zum Durchlaufen des Blob-Namespace
Der parameter delimiter
ermöglicht es dem Aufrufer, den BLOB-Namespace mithilfe eines vom Benutzer konfigurierten Trennzeichens zu durchlaufen. Auf diese Weise können Sie eine virtuelle Hierarchie von Blobs durchlaufen, als wäre es ein Dateisystem. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein.
Wenn die Anforderung diesen Parameter enthält, gibt der Vorgang ein BlobPrefix
-Element zurück. Das BlobPrefix
-Element wird anstelle aller Blobs mit Namen zurückgegeben, die mit derselben Teilzeichenfolge beginnen, bis zur Darstellung des Trennzeichens. Der Wert des BlobPrefix
Elements ist Teilzeichenfolge+Trennzeichen, wobei Teilzeichenfolge die allgemeine Teilzeichenfolge ist, die einen oder mehrere Blobnamen beginnt, und Trennzeichen der Wert des delimiter
Parameters ist.
Sie können den Wert von BlobPrefix
verwenden, um einen nachfolgenden Aufruf zum Auflisten der Blobs vorzunehmen, die mit diesem Präfix beginnen. Dazu geben Sie den Wert von BlobPrefix
für den parameter prefix
für den Anforderungs-URI an.
Beachten Sie, dass jedes zurückgegebene BlobPrefix
-Element genauso wie jedes Blob
-Element zu dem maximalen Ergebnis zählt.
Blobs werden im Antworttext in alphabetischer Reihenfolge mit großgeschriebenen Buchstaben aufgelistet.
Kopieren von Fehlern in der Beschreibung des Kopierstatus
CopyStatusDescription
enthält weitere Informationen zum Copy Blob
Fehler.
Wenn ein Kopierversuch fehlschlägt, wird
CopyStatus
aufpending
festgelegt, wenn Blob Storage den Vorgang noch wiederholt. DerCopyStatusDescription
Text beschreibt den Fehler, der möglicherweise während des letzten Kopierversuchs aufgetreten ist.Wenn
CopyStatus
auffailed
festgelegt ist, beschreibt derCopyStatusDescription
Text den Fehler, der dazu führte, dass der Kopiervorgang fehlschlug.
In der folgenden Tabelle werden die Felder jedes CopyStatusDescription
Werts beschrieben.
Bestandteil | Beschreibung |
---|---|
HTTP-Statuscode | Standardmäßige dreistellige ganzzahlige Zahl, die den Fehler angibt. |
Fehlercode | Schlüsselwort, das den Fehler beschreibt. Sie wird von Azure im <ErrorCode->-Element bereitgestellt. Wenn kein <ErrorCode->-Element angezeigt wird, gibt der Dienst ein Schlüsselwort zurück, das Standardfehlertext enthält, der dem dreistelligen HTTP-Statuscode in der HTTP-Spezifikation zugeordnet ist. Weitere Informationen finden Sie unter Allgemeinen REST-API-Fehlercodes. |
Information | Detaillierte Beschreibung des Fehlers in Anführungszeichen. |
In der folgenden Tabelle werden die werte CopyStatus
und CopyStatusDescription
gängiger Fehlerszenarien beschrieben.
Wichtig
Der hier gezeigte Beschreibungstext kann ohne Warnung auch ohne Versionsänderung geändert werden. Verlassen Sie sich nicht darauf, diesen exakten Text zuzuordnen.
Szenario | Kopierstatuswert | Statusbeschreibungswert kopieren |
---|---|---|
Der Kopiervorgang wurde erfolgreich abgeschlossen. | Erfolg | leer |
Der Benutzer hat den Kopiervorgang abgebrochen, bevor er abgeschlossen wurde. | abgebrochen | leer |
Fehler beim Lesen aus dem Quell-BLOB während eines Kopiervorgangs. Der Vorgang wird wiederholt. | anhängig | 502 BadGateway "Beim Lesen der Quelle ist ein erneuter Fehler aufgetreten. Versuchen Sie es erneut. Fehlerzeit: <Zeit>" |
Fehler beim Schreiben in das Ziel-BLOB eines Kopiervorgangs. Der Vorgang wird wiederholt. | anhängig | 500 InternalServerError "Es ist ein erneuter Fehler aufgetreten. Versuchen Sie es erneut. Fehlerzeit: <Zeit>" |
Beim Lesen aus dem Quell-BLOB eines Kopiervorgangs ist ein nicht wiederherstellbarer Fehler aufgetreten. | misslungen | 404 ResourceNotFound "Kopieren beim Lesen der Quelle fehlgeschlagen". Wenn der Dienst diesen zugrunde liegenden Fehler meldet, gibt er ResourceNotFound im <ErrorCode->-Element zurück. Wenn in der Antwort kein <ErrorCode> Element angezeigt wurde, wird eine Standardzeichenfolgendarstellung des HTTP-Status angezeigt, z. B. NotFound . |
Der Timeoutzeitraum, der alle verstrichenen Kopiervorgänge begrenzt. (Derzeit beträgt der Timeoutzeitraum zwei Wochen.) | misslungen | 500 OperationCancelled "Die Kopie hat die maximal zulässige Zeit überschritten." |
Der Kopiervorgang ist beim Lesen aus der Quelle zu häufig fehlgeschlagen und hat kein Mindestverhältnis von Versuchen zu Erfolgen erfüllt. (Dieses Timeout verhindert, dass eine sehr schlechte Quelle mehr als zwei Wochen vor dem Fehlschlagen versucht wird). | misslungen | 500 OperationCancelled "Fehler beim Lesen der Quelle." |
Abrechnung
Preisanforderungen können von Clients stammen, die Blob Storage-APIs verwenden, entweder direkt über die BLOB Storage-REST-API oder aus einer Azure Storage-Clientbibliothek. Diese Anforderungen anfallen Gebühren pro Transaktion. Der Transaktionstyp wirkt sich auf die Belastung des Kontos aus. Lesen Sie z. B. Transaktionen, die einer anderen Abrechnungskategorie als dem Schreiben von Transaktionen zugerechnet werden. Die folgende Tabelle zeigt die Abrechnungskategorie für List Blobs
Anforderungen basierend auf dem Speicherkontotyp:
Operation | Speicherkontotyp | Abrechnungskategorie |
---|---|---|
Blobs auflisten | Premium-Block-BLOB Standard general-purpose v2 Standard general-purpose v1 |
Listen- und Erstellen von Containervorgängen |
Informationen zu den Preisen für die angegebene Abrechnungskategorie finden Sie unter Azure Blob Storage Pricing.