ContainerClient Klasse
Ein Client, der mit einem bestimmten Container interagiert, obwohl dieser Container möglicherweise noch nicht vorhanden ist.
Für Vorgänge, die sich auf ein bestimmtes Blob in diesem Container beziehen, kann ein Blobclient mithilfe der get_blob_client -Funktion abgerufen werden.
Weitere optionale Konfigurationen finden Sie hier.
- Vererbung
-
azure.storage.blob._shared.base_client.StorageAccountHostsMixinContainerClientazure.storage.blob._encryption.StorageEncryptionMixinContainerClient
Konstruktor
ContainerClient(account_url: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parameter
- account_url
- str
Der URI für das Speicherkonto. Um einen Client mit dem vollständigen URI für den Container zu erstellen, verwenden Sie die from_container_url classmethod.
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt. Der Wert kann eine SAS-Tokenzeichenfolge, eine instance eines AzureSasCredential- oder AzureNamedKeyCredential-Elements von azure.core.credentials, ein kontofreigaber Zugriffsschlüssel oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Wenn der Ressourcen-URI bereits ein SAS-Token enthält, wird dies zugunsten einer expliziten Anmeldeinformation ignoriert.
- außer im Fall von AzureSasCredential, bei dem die in Konflikt stehenden SAS-Token einen ValueError auslösen. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
- api_version
- str
Die Speicher-API-Version, die für Anforderungen verwendet werden soll. Der Standardwert ist die neueste Dienstversion, die mit dem aktuellen SDK kompatibel ist. Die Einstellung auf eine ältere Version kann zu einer verringerten Featurekompatibilität führen.
Neu in Version 12.2.0.
- secondary_hostname
- str
Der Hostname des sekundären Endpunkts.
- max_block_size
- int
Die maximale Blockgröße für das Hochladen eines Blockblobs in Blöcken.
Der Standardwert ist 4*1024*1024
oder 4 MB.
- max_single_put_size
- int
Wenn die Blobgröße kleiner oder gleich max_single_put_size ist, wird das Blob mit nur einer HTTP PUT-Anforderung hochgeladen. Wenn die Blobgröße größer als max_single_put_size ist, wird das Blob in Blöcken hochgeladen. Der Standardwert ist 64*1024*1024
oder 64 MB.
- min_large_block_upload_threshold
- int
Die minimale Blockgröße, die erforderlich ist, um den speichereffizienten Algorithmus beim Hochladen eines Blockblobs zu verwenden. Der Standardwert ist 4*1024*1024
+1.
- use_byte_buffer
- bool
Verwenden Sie einen Bytepuffer für Blockblobuploads. Der Standardwert lautet „False“.
- max_page_size
- int
Die maximale Blockgröße für das Hochladen eines Seitenblobs. Der Standardwert ist 4*1024*1024
oder 4 MB.
- max_single_get_size
- int
Die maximale Größe für ein Blob, das in einem einzelnen Aufruf heruntergeladen werden soll, der überschrittene Teil wird in Blöcken heruntergeladen (kann parallel sein). Der Standardwert ist 32*1024*1024
oder 32 MB.
- max_chunk_get_size
- int
Die maximale Blockgröße, die zum Herunterladen eines Blobs verwendet wird. Der Standardwert ist 4*1024*1024
oder 4 MB.
Methoden
acquire_lease |
Fordert eine neue Lease an. Wenn der Container über keine aktive Lease verfügt, erstellt der Blob-Dienst eine Lease für den Container und gibt eine neue Lease-ID zurück. |
close |
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird. |
create_container |
Erstellt einen neuen Container unter dem angegebenen Konto. Wenn ein Container mit demselben Namen bereits vorhanden ist, schlägt der Vorgang fehl. |
delete_blob |
Markiert das angegebene Blob oder Momentaufnahme zum Löschen. Das BLOB wird später während der automatischen Speicherbereinigung gelöscht. Beachten Sie, dass Sie zum Löschen eines BLOB alle zugehörigen Momentaufnahmen löschen müssen. Sie können beide gleichzeitig mit dem delete_blob-Vorgang löschen. Wenn eine Aufbewahrungsrichtlinie für das Löschen für den Dienst aktiviert ist, löscht dieser Vorgang das Blob oder die Momentaufnahme vorläufig und behält das Blob oder die Momentaufnahme für die angegebene Anzahl von Tagen. Nach der angegebenen Anzahl von Tagen werden die Blobdaten während der Garbage Collection aus dem Dienst entfernt. Auf vorläufig gelöschte Blobs oder Momentaufnahme kann über list_blobs die Option include=["deleted"] zugegriffen werden. Vorläufig gelöschte Blobs oder Momentaufnahme können mithilfe von wiederhergestellt werden.<xref:azure.storage.blob.BlobClient.undelete> |
delete_blobs |
Markiert die angegebenen Blobs oder Momentaufnahmen zum Löschen. Die Blobs werden später während der Garbage Collection gelöscht. Beachten Sie, dass Sie zum Löschen von Blobs alle momentaufnahmen löschen müssen. Sie können beide gleichzeitig mit dem delete_blobs-Vorgang löschen. Wenn eine Aufbewahrungsrichtlinie für das Löschen für den Dienst aktiviert ist, löscht dieser Vorgang die Blobs oder Momentaufnahmen vorläufig und behält die Blobs oder Momentaufnahmen für die angegebene Anzahl von Tagen bei. Nach der angegebenen Anzahl von Tagen werden die Daten von Blobs während der Garbage Collection aus dem Dienst entfernt. Vorläufig gelöschte Blobs oder Momentaufnahmen können mithilfe von list_blobsinclude=["deleted"] vorläufig gelöschte Blobs oder Momentaufnahmen wiederhergestellt werden. <xref:azure.storage.blob.BlobClient.undelete> Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung gelöscht werden können, beträgt 256. |
delete_container |
Markiert den angegebenen Container zum Löschen. Der Container und alle darin enthaltenen BLOBs werden später während der automatischen Speicherbereinigung gelöscht. |
download_blob |
Lädt ein Blob in den StorageStreamDownloader herunter. Die readall()-Methode muss verwendet werden, um den gesamten Inhalt zu lesen, oder readinto() muss verwendet werden, um das Blob in einen Stream herunterzuladen. Mithilfe von chunks() wird ein Iterator zurückgegeben, der es dem Benutzer ermöglicht, den Inhalt in Blöcken zu durchlaufen. |
exists |
Gibt True zurück, wenn ein Container vorhanden ist, und gibt andernfalls False zurück. |
find_blobs_by_tags |
Gibt einen Generator zurück, um die Blobs unter dem angegebenen Container aufzulisten, dessen Tags mit dem angegebenen Suchausdruck übereinstimmen. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul. |
from_connection_string |
Erstellen Sie ContainerClient aus einer Verbindungszeichenfolge. |
from_container_url |
Erstellen Sie ContainerClient aus einer Container-URL. |
get_account_information |
Ruft Informationen ab, die sich auf das Speicherkonto beziehen. Die Informationen können auch abgerufen werden, wenn der Benutzer über eine SAS für einen Container oder blob verfügt. Die Schlüssel im zurückgegebenen Wörterbuch enthalten "sku_name" und "account_kind". |
get_blob_client |
Rufen Sie einen Client für die Interaktion mit dem angegebenen Blob ab. Das Blob muss noch nicht vorhanden sein. |
get_container_access_policy |
Ruft die Berechtigungen für den angegebenen Container ab. Mit den Berechtigungen wird angegeben, ob auf die Containerdaten öffentlich zugegriffen werden kann. |
get_container_properties |
Gibt alle benutzerdefinierten Metadaten und Systemeigenschaften für den angegebenen Container zurück. Die zurückgegebenen Daten enthalten nicht die Liste von BLOBs des Containers. |
list_blob_names |
Gibt einen Generator zurück, um die Namen von Blobs unter dem angegebenen Container aufzulisten. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul. Beachten Sie, dass bei Verwendung dieser API keine zusätzlichen Eigenschaften oder Metadaten zurückgegeben werden. Darüber hinaus hat diese API keine Option, zusätzliche Blobs wie Momentaufnahmen, Versionen, vorläufig gelöschte Blobs usw. einzuschließen. Um diese Daten abzurufen, verwenden Sie list_blobs. |
list_blobs |
Gibt einen Generator zurück, der die Blobs unter dem angegebenen Container auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul. |
set_container_access_policy |
Legt die Berechtigungen für den angegebenen Container oder die gespeicherten Zugriffsrichtlinien fest, die mit Shared Access Signatures verwendet werden können. Die Berechtigungen geben an, ob öffentlicher Zugriff auf BLOBs in einem Container zulässig ist. |
set_container_metadata |
Legt mindestens ein benutzerdefiniertes Name-Wert-Paar für den angegebenen Container fest. Bei jedem Aufruf dieses Vorgangs werden alle vorhandenen Metadaten ersetzt, die an den Container angefügt sind. Um alle Metadaten aus dem Container zu entfernen, rufen Sie diesen Vorgang ohne Metadatendikt auf. |
set_premium_page_blob_tier_blobs |
Legt die Seitenblobebenen für alle Blobs fest. Diese API wird nur für Seitenblobs in Premium-Konten unterstützt. Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung aktualisiert werden können, beträgt 256. |
set_standard_blob_tier_blobs |
Mit diesem Vorgang wird die Ebene für Blockblobs festgelegt. Die Ebene eines Blockblobs bestimmt den Speichertyp Hot/Cool/Archive. Bei diesem Vorgang wird das ETag des Blobs nicht aktualisiert. Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung aktualisiert werden können, beträgt 256. |
upload_blob |
Erstellt ein neues Blob aus einer Datenquelle mit automatischem Blocking. |
walk_blobs |
Gibt einen Generator zurück, der die Blobs unter dem angegebenen Container auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert. Bei diesem Vorgang werden Blobs gemäß einer Hierarchie aufgelistet, die durch das angegebene Trennzeichen getrennt ist. |
acquire_lease
Fordert eine neue Lease an. Wenn der Container über keine aktive Lease verfügt, erstellt der Blob-Dienst eine Lease für den Container und gibt eine neue Lease-ID zurück.
acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> BlobLeaseClient
Parameter
- lease_duration
- int
Gibt die Dauer der Lease in Sekunden oder als minus eins (-1) für eine nie ablaufende Lease an. Die Dauer einer nicht unendlichen Lease kann zwischen 15 und 60 Sekunden liegen. Eine Leasedauer kann nicht mithilfe von Verlängerung oder Änderung geändert werden. Der Standardwert ist -1 (unbegrenzte Lease).
- lease_id
- str
Vorgeschlagene Lease-ID in einem GUID-Zeichenfolgenformat. Der Blob-Dienst gibt 400 (Ungültige Anforderung) zurück, wenn die vorgeschlagene Lease-ID nicht das richtige Format aufweist.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn die Zeitzone enthalten ist, werden alle datumstimen, die nicht utc sind, in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein BlobLeaseClient-Objekt, das in einem Kontext-Manager ausgeführt werden kann.
Rückgabetyp
close
Diese Methode besteht darin, die vom Client geöffneten Sockets zu schließen. Es muss nicht verwendet werden, wenn sie mit einem Kontext-Manager verwendet wird.
close()
create_container
Erstellt einen neuen Container unter dem angegebenen Konto. Wenn ein Container mit demselben Namen bereits vorhanden ist, schlägt der Vorgang fehl.
create_container(metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs: Any) -> Dict[str, str | datetime]
Parameter
Ein Diktat mit name_value Paaren, die dem Container als Metadaten zugeordnet werden sollen. Beispiel:{'Category':'test'}
- container_encryption_scope
- dict oder ContainerEncryptionScope
Gibt den Standardverschlüsselungsbereich an, der für den Container festgelegt und für alle zukünftigen Schreibvorgänge verwendet werden soll.
Neu in Version 12.2.0.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein Wörterbuch mit Antwortheadern.
Rückgabetyp
delete_blob
Markiert das angegebene Blob oder Momentaufnahme zum Löschen.
Das BLOB wird später während der automatischen Speicherbereinigung gelöscht. Beachten Sie, dass Sie zum Löschen eines BLOB alle zugehörigen Momentaufnahmen löschen müssen. Sie können beide gleichzeitig mit dem delete_blob-Vorgang löschen.
Wenn eine Aufbewahrungsrichtlinie für das Löschen für den Dienst aktiviert ist, löscht dieser Vorgang das Blob oder die Momentaufnahme vorläufig und behält das Blob oder die Momentaufnahme für die angegebene Anzahl von Tagen. Nach der angegebenen Anzahl von Tagen werden die Blobdaten während der Garbage Collection aus dem Dienst entfernt. Auf vorläufig gelöschte Blobs oder Momentaufnahme kann über list_blobs die Option include=["deleted"] zugegriffen werden. Vorläufig gelöschte Blobs oder Momentaufnahme können mithilfe von wiederhergestellt werden.<xref:azure.storage.blob.BlobClient.undelete>
delete_blob(blob: str | BlobProperties, delete_snapshots: str | None = None, **kwargs) -> None
Parameter
- blob
- str oder BlobProperties
Das Blob, mit dem interagiert werden soll. Wenn angegeben, überschreibt dieser Wert einen in der Blob-URL angegebenen Blobwert.
- delete_snapshots
- str
Erforderlich, wenn dem BLOB Momentaufnahmen zugeordnet sind. Mögliche Werte:
"nur": Löscht nur die Blobmomentaufnahmen.
"include": Löscht das Blob zusammen mit allen Momentaufnahmen.
- version_id
- str
Der Versions-ID-Parameter ist ein undurchsichtiger DateTime-Wert, der, sofern vorhanden, die Version des zu löschenden Blobs angibt.
Neu in Version 12.4.0.
Dieses Schlüsselwort (keyword) Argument wurde in der API-Version "2019-12-12" eingeführt.
- lease
- BlobLeaseClient oder str
Erforderlich, wenn das BLOB über eine aktive Lease verfügt. Der Wert kann ein BlobLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- if_tags_match_condition
- str
Geben Sie eine SQL-Klausel für Blobtags an, die nur für Blobs mit einem übereinstimmenden Wert ausgeführt werden soll.
Beispiel: "\"tagname\"='my tag'"
Neu in Version 12.4.0.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
delete_blobs
Markiert die angegebenen Blobs oder Momentaufnahmen zum Löschen.
Die Blobs werden später während der Garbage Collection gelöscht. Beachten Sie, dass Sie zum Löschen von Blobs alle momentaufnahmen löschen müssen. Sie können beide gleichzeitig mit dem delete_blobs-Vorgang löschen.
Wenn eine Aufbewahrungsrichtlinie für das Löschen für den Dienst aktiviert ist, löscht dieser Vorgang die Blobs oder Momentaufnahmen vorläufig und behält die Blobs oder Momentaufnahmen für die angegebene Anzahl von Tagen bei. Nach der angegebenen Anzahl von Tagen werden die Daten von Blobs während der Garbage Collection aus dem Dienst entfernt. Vorläufig gelöschte Blobs oder Momentaufnahmen können mithilfe von list_blobsinclude=["deleted"] vorläufig gelöschte Blobs oder Momentaufnahmen wiederhergestellt werden. <xref:azure.storage.blob.BlobClient.undelete>
Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung gelöscht werden können, beträgt 256.
delete_blobs(*blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]
Parameter
- blobs
- str oder dict(str, Any) oder BlobProperties
Die zu löschenden Blobs. Dies kann ein einzelnes Blob sein, oder es können mehrere Werte angegeben werden, wobei jeder Wert entweder der Name des Blobs (str) oder BlobProperties ist.
Hinweis
Wenn der Blobtyp dict ist, finden Sie hier eine Liste von Schlüsseln und Wertregeln.
Blobname:
schlüssel: 'name', Werttyp: str
Momentaufnahme Sie löschen möchten:
key: 'Momentaufnahme', Werttyp: str
Versions-ID:
key: 'version_id', Werttyp: str
ob Momentaufnahmen beim Löschen des Blobs gelöscht werden sollen:
Schlüssel: "delete_snapshots", Wert: "include" oder "only"
wenn das Blob geändert hat oder nicht:
schlüssel: 'if_modified_since', 'if_unmodified_since', Werttyp: datetime
Etag:
Key: 'etag', Werttyp: str
mit dem etag übereinstimmen oder nicht:
Key: 'match_condition', Werttyp: MatchConditions
Tags stimmen bedingung überein:
key: 'if_tags_match_condition', Werttyp: str
mieten:
key: 'lease_id', Werttyp: Union[str, LeaseClient]
Timeout für Unteranforderung:
schlüssel: 'timeout', Werttyp: int
- delete_snapshots
- str
Erforderlich, wenn ein Blob über zugeordnete Momentaufnahmen verfügt. Mögliche Werte:
"nur": Löscht nur die Blobs-Momentaufnahmen.
"include": Löscht das Blob zusammen mit allen Momentaufnahmen.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- if_tags_match_condition
- str
Geben Sie eine SQL-Klausel für Blobtags an, die nur für Blobs mit einem übereinstimmenden Wert ausgeführt werden soll.
Beispiel: "\"tagname\"='my tag'"
Neu in Version 12.4.0.
- raise_on_any_failure
- bool
Dies ist ein boolescher Param, der standardmäßig auf True festgelegt ist. Wenn dies festgelegt ist, wird eine Ausnahme ausgelöst, auch wenn ein einzelner Vorgang ausfällt.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Ein Iterator mit Antworten, einer für jedes Blob in der Reihenfolge
Rückgabetyp
delete_container
Markiert den angegebenen Container zum Löschen. Der Container und alle darin enthaltenen BLOBs werden später während der automatischen Speicherbereinigung gelöscht.
delete_container(**kwargs: Any) -> None
Parameter
- lease
- BlobLeaseClient oder str
Wenn angegeben, ist delete_container nur erfolgreich, wenn die Lease des Containers aktiv ist und dieser ID entspricht. Erforderlich, wenn der Container über eine aktive Lease verfügt.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Rückgabetyp
download_blob
Lädt ein Blob in den StorageStreamDownloader herunter. Die readall()-Methode muss verwendet werden, um den gesamten Inhalt zu lesen, oder readinto() muss verwendet werden, um das Blob in einen Stream herunterzuladen. Mithilfe von chunks() wird ein Iterator zurückgegeben, der es dem Benutzer ermöglicht, den Inhalt in Blöcken zu durchlaufen.
download_blob(blob: str | BlobProperties, offset: int = None, length: int = None, *, encoding: str, **kwargs) -> StorageStreamDownloader[str]
Parameter
- blob
- str oder BlobProperties
Das Blob, mit dem interagiert werden soll. Wenn angegeben, überschreibt dieser Wert einen Blobwert, der in der Blob-URL angegeben ist.
- offset
- int
Start des Bytebereichs, der zum Herunterladen eines Abschnitts des Blobs verwendet werden soll. Muss festgelegt werden, wenn die Länge angegeben wird.
- length
- int
Anzahl der Bytes, die aus dem Stream gelesen werden sollen. Dies ist optional, sollte aber für eine optimale Leistung bereitgestellt werden.
- version_id
- str
Der Versions-ID-Parameter ist ein undurchsichtiger DateTime-Wert, der, wenn vorhanden, die Version des herunterzuladenden Blobs angibt.
Neu in Version 12.4.0.
Dieses Schlüsselwort (keyword)-Argument wurde in der API-Version "2019-12-12" eingeführt.
- validate_content
- bool
Wenn true, berechnet ein MD5-Hash für jeden Block des Blobs. Der Speicherdienst überprüft den Hash des Inhalts, der mit dem gesendeten Hash eingetroffen ist. Dies ist in erster Linie nützlich für die Erkennung von Bitflips im Kabel, wenn http anstelle von https verwendet wird, da https (der Standardwert) bereits überprüft wird. Beachten Sie, dass dieser MD5-Hash nicht mit dem BLOB gespeichert wird. Beachten Sie außerdem, dass der speichereffiziente Uploadalgorithmus bei Aktivierung nicht verwendet wird, da die Berechnung des MD5-Hashs das Puffern ganzer Blöcke erfordert und dadurch den Zweck des speichereffizienten Algorithmus vereitet.
- lease
- BlobLeaseClient oder str
Erforderlich, wenn das BLOB über eine aktive Lease verfügt. Wenn angegeben, download_blob nur erfolgreich, wenn die Lease des Blobs aktiv ist und dieser ID entspricht. Der Wert kann ein BlobLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- if_tags_match_condition
- str
Geben Sie eine SQL-Klausel für Blobtags an, die nur für Blobs mit einem übereinstimmenden Wert ausgeführt werden soll.
Beispiel: "\"tagname\"='my tag'"
Neu in Version 12.4.0.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung der vom Kunden bereitgestellten Schlüssel muss über HTTPS erfolgen. Da der Verschlüsselungsschlüssel selbst in der Anforderung angegeben wird, muss eine sichere Verbindung hergestellt werden, um den Schlüssel zu übertragen.
- max_concurrency
- int
Die Anzahl der parallelen Verbindungen, mit denen heruntergeladen werden soll.
- encoding
- str
Codierung zum Decodieren der heruntergeladenen Bytes. Der Standardwert ist Keine, d. h. keine Decodierung.
Ein Rückruf, um den Fortschritt eines lange ausgeführten Downloads nachzuverfolgen. Die Signatur ist function(current: int, total: int), wobei current die Anzahl der bisher übertragenen Bytes ist, und total ist die Gesamtgröße des Downloads.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier. Diese Methode kann mehrere Aufrufe des Diensts tätigen, und das Timeout gilt für jeden Aufruf einzeln. Mehrere Aufrufe des Azure-Diensts und das Timeout gelten für jeden Aufruf einzeln.
Gibt zurück
Ein Streamingobjekt (StorageStreamDownloader)
Rückgabetyp
exists
Gibt True zurück, wenn ein Container vorhanden ist, und gibt andernfalls False zurück.
exists(**kwargs: Any) -> bool
Parameter
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
boolean
Rückgabetyp
find_blobs_by_tags
Gibt einen Generator zurück, um die Blobs unter dem angegebenen Container aufzulisten, dessen Tags mit dem angegebenen Suchausdruck übereinstimmen. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul.
find_blobs_by_tags(filter_expression: str, **kwargs: Any | None) -> ItemPaged[FilteredBlob]
Parameter
- filter_expression
- str
Der Ausdruck, um Blobs zu finden, deren Tags der angegebenen Bedingung entsprechen. Beispiel: "yourtagname"='firsttag' und "yourtagname2"='secondtag'"
- results_per_page
- int
Das maximale Ergebnis pro Seite beim Paginieren.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (automatisches Paging) von FilteredBlob.
Rückgabetyp
from_connection_string
Erstellen Sie ContainerClient aus einer Verbindungszeichenfolge.
from_connection_string(conn_str: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parameter
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt oder die Verbindungszeichenfolge bereits freigegebene Zugriffsschlüsselwerte aufweist. Der Wert kann eine SAS-Tokenzeichenfolge, ein instance einer AzureSasCredential- oder AzureNamedKeyCredential-Instanz von azure.core.credentials, ein freigegebener Zugriffsschlüssel für ein Konto oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Die hier angegebenen Anmeldeinformationen haben Vorrang vor denen in der Verbindungszeichenfolge. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
Gibt zurück
Ein Containerclient.
Rückgabetyp
from_container_url
Erstellen Sie ContainerClient aus einer Container-URL.
from_container_url(container_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parameter
- container_url
- str
Die vollständige Endpunkt-URL für den Container, einschließlich SAS-Token, falls verwendet. Dies kann entweder der primäre Endpunkt oder der sekundäre Endpunkt sein, abhängig vom aktuellen location_mode.
- credential
Die Anmeldeinformationen, mit denen die Authentifizierung erfolgt. Dies ist optional, wenn die Konto-URL bereits über ein SAS-Token verfügt oder die Verbindungszeichenfolge bereits freigegebene Zugriffsschlüsselwerte aufweist. Der Wert kann eine SAS-Tokenzeichenfolge, ein instance einer AzureSasCredential- oder AzureNamedKeyCredential-Instanz von azure.core.credentials, ein freigegebener Zugriffsschlüssel für ein Konto oder ein instance einer TokenCredentials-Klasse aus azure.identity sein. Wenn der Ressourcen-URI bereits ein SAS-Token enthält, wird dies zugunsten expliziter Anmeldeinformationen ignoriert.
- außer im Fall von AzureSasCredential, bei dem die in Konflikt stehenden SAS-Token einen ValueError auslösen. Wenn Sie eine instance von AzureNamedKeyCredential verwenden, sollte "name" der Name des Speicherkontos und "key" der Speicherkontoschlüssel sein.
Gibt zurück
Ein Containerclient.
Rückgabetyp
get_account_information
Ruft Informationen ab, die sich auf das Speicherkonto beziehen.
Die Informationen können auch abgerufen werden, wenn der Benutzer über eine SAS für einen Container oder blob verfügt. Die Schlüssel im zurückgegebenen Wörterbuch enthalten "sku_name" und "account_kind".
get_account_information(**kwargs: Any) -> Dict[str, str]
Gibt zurück
Ein Dict der Kontoinformationen (SKU und Kontotyp).
Rückgabetyp
get_blob_client
Rufen Sie einen Client für die Interaktion mit dem angegebenen Blob ab.
Das Blob muss noch nicht vorhanden sein.
get_blob_client(blob: str | BlobProperties, snapshot: str = None, *, version_id: str | None = None) -> BlobClient
Parameter
- snapshot
- str
Das optionale Blob Momentaufnahme, mit dem ausgeführt werden soll. Dies kann die Momentaufnahme-ID-Zeichenfolge oder die von create_snapshotzurückgegebene Antwort sein.
- version_id
- str
Der Versions-ID-Parameter ist ein undurchsichtiger DateTime-Wert, der, wenn vorhanden, die Version des Blobs angibt, mit dem ausgeführt werden soll.
Gibt zurück
Ein BlobClient.
Rückgabetyp
get_container_access_policy
Ruft die Berechtigungen für den angegebenen Container ab. Mit den Berechtigungen wird angegeben, ob auf die Containerdaten öffentlich zugegriffen werden kann.
get_container_access_policy(**kwargs: Any) -> Dict[str, Any]
Parameter
- lease
- BlobLeaseClient oder str
Wenn angegeben, get_container_access_policy nur erfolgreich, wenn die Lease des Containers aktiv ist und dieser ID entspricht.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Greifen Sie auf Richtlinieninformationen in einem Dict zu.
Rückgabetyp
get_container_properties
Gibt alle benutzerdefinierten Metadaten und Systemeigenschaften für den angegebenen Container zurück. Die zurückgegebenen Daten enthalten nicht die Liste von BLOBs des Containers.
get_container_properties(**kwargs: Any) -> ContainerProperties
Parameter
- lease
- BlobLeaseClient oder str
Wenn angegeben, ist get_container_properties nur erfolgreich, wenn die Lease des Containers aktiv ist und dieser ID entspricht.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eigenschaften für den angegebenen Container in einem Containerobjekt.
Rückgabetyp
list_blob_names
Gibt einen Generator zurück, um die Namen von Blobs unter dem angegebenen Container aufzulisten. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul.
Beachten Sie, dass bei Verwendung dieser API keine zusätzlichen Eigenschaften oder Metadaten zurückgegeben werden. Darüber hinaus hat diese API keine Option, zusätzliche Blobs wie Momentaufnahmen, Versionen, vorläufig gelöschte Blobs usw. einzuschließen. Um diese Daten abzurufen, verwenden Sie list_blobs.
list_blob_names(**kwargs: Any) -> ItemPaged[str]
Parameter
- name_starts_with
- str
Filtert die Ergebnisse, um nur BLOBs zurückgegeben, deren Namen mit dem angegebenen Präfix beginnen.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (automatisches Paging) von Blobnamen als Zeichenfolgen.
Rückgabetyp
list_blobs
Gibt einen Generator zurück, der die Blobs unter dem angegebenen Container auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken faul.
list_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, **kwargs: Any) -> ItemPaged[BlobProperties]
Parameter
- name_starts_with
- str
Filtert die Ergebnisse, um nur BLOBs zurückgegeben, deren Namen mit dem angegebenen Präfix beginnen.
Gibt mindestens ein zusätzliches Dataset an, das in die Antwort eingeschlossen werden soll. Zu den Optionen gehören "snapshots", "metadata", "uncommittedblobs", "copy", "deletedwithversions", "tags", "versions", "immutabilitypolicy", "legalhold".
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (automatisches Paging) von BlobProperties.
Rückgabetyp
set_container_access_policy
Legt die Berechtigungen für den angegebenen Container oder die gespeicherten Zugriffsrichtlinien fest, die mit Shared Access Signatures verwendet werden können. Die Berechtigungen geben an, ob öffentlicher Zugriff auf BLOBs in einem Container zulässig ist.
set_container_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
- signed_identifiers
- dict[str, AccessPolicy]
Ein Wörterbuch mit Zugriffsrichtlinien, die dem Container zugeordnet werden sollen. Das Wörterbuch kann bis zu 5 Elemente enthalten. Ein leeres Wörterbuch löscht die Zugriffsrichtlinien, die für den Dienst festgelegt sind.
- lease
- BlobLeaseClient oder str
Erforderlich, wenn der Container über eine aktive Lease verfügt. Der Wert kann ein BlobLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein datetime-Wert. Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Geben Sie diesen Header an, um den Vorgang nur auszuführen, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit geändert wurde.
- if_unmodified_since
- datetime
Ein datetime-Wert. Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Container-aktualisierter Eigenschaftsedikt (Etag und zuletzt geändert).
Rückgabetyp
set_container_metadata
Legt mindestens ein benutzerdefiniertes Name-Wert-Paar für den angegebenen Container fest. Bei jedem Aufruf dieses Vorgangs werden alle vorhandenen Metadaten ersetzt, die an den Container angefügt sind. Um alle Metadaten aus dem Container zu entfernen, rufen Sie diesen Vorgang ohne Metadatendikt auf.
set_container_metadata(metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]
Parameter
Ein Diktat, das Name-Wert-Paare enthält, die dem Container als Metadaten zugeordnet werden sollen. Beispiel: {'category':'test'}
- lease
- BlobLeaseClient oder str
Wenn angegeben, ist set_container_metadata nur erfolgreich, wenn die Lease des Containers aktiv ist und dieser ID entspricht.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Container-aktualisierter Eigenschaftsedikt (Etag und zuletzt geändert).
Rückgabetyp
set_premium_page_blob_tier_blobs
Legt die Seitenblobebenen für alle Blobs fest. Diese API wird nur für Seitenblobs in Premium-Konten unterstützt.
Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung aktualisiert werden können, beträgt 256.
set_premium_page_blob_tier_blobs(premium_page_blob_tier: str | PremiumPageBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]
Parameter
- premium_page_blob_tier
- PremiumPageBlobTier
Ein Seitenblobebenenwert, auf den das Blob festgelegt werden soll. Die Ebene korreliert mit der Größe des Blobs und der Anzahl der zulässigen IOPS. Dies gilt nur für Seitenblobs in Storage Premium-Konten.
Hinweis
Wenn Sie eine andere Ebene für verschiedene Blobs festlegen möchten, legen Sie diesen Positionsparameter auf None fest.
Dann wird die Blobebene für alle BlobProperties übernommen.
- blobs
- str oder dict(str, Any) oder BlobProperties
Die Blobs, mit denen interagiert werden soll. Dies kann ein einzelnes Blob sein, oder es können mehrere Werte angegeben werden, wobei jeder Wert entweder der Name des Blobs (str) oder BlobProperties ist.
Hinweis
Wenn der Blobtyp dict ist, finden Sie hier eine Liste von Schlüsseln und Wertregeln.
Blobname:
schlüssel: 'name', Werttyp: str
Premium-Blobebene:
key: 'blob_tier', Werttyp: PremiumPageBlobTier
mieten:
key: 'lease_id', Werttyp: Union[str, LeaseClient]
Timeout für Unteranforderung:
schlüssel: 'timeout', Werttyp: int
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
- raise_on_any_failure
- bool
Dies ist ein boolescher Param, der standardmäßig auf True festgelegt ist. Wenn dies festgelegt ist, wird eine Ausnahme ausgelöst, auch wenn ein einzelner Vorgang ausfällt.
Gibt zurück
Ein Iterator mit Antworten, einer für jedes Blob in der Reihenfolge
Rückgabetyp
set_standard_blob_tier_blobs
Mit diesem Vorgang wird die Ebene für Blockblobs festgelegt.
Die Ebene eines Blockblobs bestimmt den Speichertyp Hot/Cool/Archive. Bei diesem Vorgang wird das ETag des Blobs nicht aktualisiert.
Die maximale Anzahl von Blobs, die in einer einzelnen Anforderung aktualisiert werden können, beträgt 256.
set_standard_blob_tier_blobs(standard_blob_tier: str | StandardBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]
Parameter
- standard_blob_tier
- str oder StandardBlobTier
Gibt die Ebene an, die für alle Blobs festgelegt werden soll. Zu den Optionen gehören "Heiß", "Cool", "Archiv". Die heiße Ebene ist für das Speichern von Daten optimiert, auf die häufig zugegriffen wird. Die kühle Speicherebene ist für das Speichern von Daten optimiert, auf die selten zugegriffen und mindestens einen Monat lang gespeichert wird. Die Archivebene ist für das Speichern von Daten optimiert, auf die selten zugegriffen und mindestens sechs Monate lang mit flexiblen Latenzanforderungen gespeichert wird.
Hinweis
Wenn Sie eine andere Ebene für verschiedene Blobs festlegen möchten, legen Sie diesen Positionsparameter auf None fest.
Dann wird die Blobebene für alle BlobProperties übernommen.
- blobs
- str oder dict(str, Any) oder BlobProperties
Die Blobs, mit denen interagiert werden soll. Dies kann ein einzelnes Blob sein, oder es können mehrere Werte angegeben werden, wobei jeder Wert entweder der Name des Blobs (str) oder BlobProperties ist.
Hinweis
Wenn der Blobtyp dict ist, finden Sie hier eine Liste von Schlüsseln und Wertregeln.
Blobname:
schlüssel: 'name', Werttyp: str
Standardblobebene:
schlüssel: 'blob_tier', Werttyp: StandardBlobTier
Rehydrierungspriorität:
key: 'rehydrate_priority', Werttyp: RehydratePriority
mieten:
key: 'lease_id', Werttyp: Union[str, LeaseClient]
Momentaufnahme:
key: "Momentaufnahme", Werttyp: str
Versions-ID:
key: "version_id", Werttyp: str
Tags stimmen bedingung überein:
key: 'if_tags_match_condition', Werttyp: str
Timeout für Unteranforderung:
schlüssel: 'timeout', Werttyp: int
- rehydrate_priority
- RehydratePriority
Gibt die Priorität an, mit der ein archiviertes Blob rehydriert werden soll.
- if_tags_match_condition
- str
Geben Sie eine SQL-Klausel für Blobtags an, die nur für Blobs mit einem übereinstimmenden Wert ausgeführt werden soll.
Beispiel: "\"tagname\"='my tag'"
Neu in Version 12.4.0.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird nicht auf dem Client nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
- raise_on_any_failure
- bool
Dies ist ein boolescher Param, der standardmäßig auf True festgelegt ist. Wenn dies festgelegt ist, wird eine Ausnahme ausgelöst, auch wenn ein einzelner Vorgang ausfällt.
Gibt zurück
Ein Iterator mit Antworten, einer für jedes Blob in der Reihenfolge
Rückgabetyp
upload_blob
Erstellt ein neues Blob aus einer Datenquelle mit automatischem Blocking.
upload_blob(name: str | BlobProperties, data: bytes | str | Iterable | IO, blob_type: str | BlobType = BlobType.BLOCKBLOB, length: int | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> BlobClient
Parameter
- name
- str oder BlobProperties
Das Blob, mit dem interagiert werden soll. Wenn angegeben, überschreibt dieser Wert einen Blobwert, der in der Blob-URL angegeben ist.
- data
Die hochzuladenden Blobdaten.
- blob_type
- BlobType
Der Typ des Blobs. Dies kann entweder BlockBlob, PageBlob oder AppendBlob sein. Der Standardwert ist BlockBlob.
- length
- int
Anzahl der Bytes, die aus dem Stream gelesen werden sollen. Dies ist optional, sollte aber für eine optimale Leistung bereitgestellt werden.
- overwrite
- bool
Gibt an, ob das hochzuladende Blob die aktuellen Daten überschreiben soll. Bei True überschreibt upload_blob die vorhandenen Daten. Wenn auf False festgelegt ist, schlägt der Vorgang mit ResourceExistsError fehl. Die Ausnahme von oben besteht bei Anfügeblobtypen: Wenn auf False festgelegt ist und die Daten bereits vorhanden sind, wird kein Fehler ausgelöst, und die Daten werden an das vorhandene Blob angefügt. Wenn set overwrite=True, wird das vorhandene Anfügeblob gelöscht und ein neues erstellt. Der Standardwert lautet „False“.
- content_settings
- ContentSettings
ContentSettings-Objekt, das zum Festlegen von Blobeigenschaften verwendet wird. Wird zum Festlegen von Inhaltstyp, Codierung, Sprache, Disposition, md5 und Cachesteuerung verwendet.
- validate_content
- bool
Wenn true, berechnet ein MD5-Hash für jeden Block des Blobs. Der Speicherdienst überprüft den Hash des Inhalts, der mit dem gesendeten Hash eingetroffen ist. Dies ist in erster Linie nützlich für die Erkennung von Bitflips im Kabel, wenn http anstelle von https verwendet wird, da https (der Standardwert) bereits überprüft wird. Beachten Sie, dass dieser MD5-Hash nicht mit dem BLOB gespeichert wird. Beachten Sie außerdem, dass bei Aktivierung der speichereffiziente Uploadalgorithmus nicht verwendet wird, da für die Berechnung des MD5-Hashs das Puffern ganzer Blöcke erforderlich ist. Dadurch wird der Zweck des speichereffizienten Algorithmus verfehlt.
- lease
- BlobLeaseClient oder str
Erforderlich, wenn der Container über eine aktive Lease verfügt. Der Wert kann ein BlobLeaseClient-Objekt oder die Lease-ID als Zeichenfolge sein.
- if_modified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit der angegebenen Zeit geändert wurde.
- if_unmodified_since
- datetime
Ein DateTime-Wert Azure erwartet, dass der übergebene Datumswert UTC ist. Wenn Zeitzone enthalten ist, werden alle Datumstimes ohne UTC in UTC konvertiert. Wenn ein Datum ohne Zeitzoneninformationen übergeben wird, wird davon ausgegangen, dass es UTC ist. Mit diesem Header legen Sie fest, dass der Vorgang nur ausgeführt wird, wenn die Ressource seit dem angegebenen Datum/der angegebenen Uhrzeit nicht geändert wurde.
- etag
- str
Ein ETag-Wert oder das Platzhalterzeichen (*). Wird verwendet, um zu überprüfen, ob sich die Ressource geändert hat, und handelt gemäß der Bedingung, die vom parameter match_condition angegeben wird.
- match_condition
- MatchConditions
Die Übereinstimmungsbedingung, die für das etag verwendet werden soll.
- if_tags_match_condition
- str
Geben Sie eine SQL-Klausel für Blobtags an, die nur für Blobs mit einem übereinstimmenden Wert ausgeführt werden soll.
Beispiel: "\"tagname\"='my tag'"
Neu in Version 12.4.0.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier. Diese Methode kann mehrere Aufrufe an den Dienst ausführen, und das Timeout gilt für jeden Aufruf einzeln.
- premium_page_blob_tier
- PremiumPageBlobTier
Ein Seitenblobebenenwert, auf den das Blob festgelegt werden soll. Die Ebene korreliert mit der Größe des Blobs und der Anzahl der zulässigen IOPS. Dies gilt nur für Seitenblobs in Storage Premium-Konten.
- standard_blob_tier
- StandardBlobTier
Ein Standard-Blobebenenwert, auf den das Blob festgelegt werden soll. Für diese Version der Bibliothek gilt dies nur für Blockblobs in Standardspeicherkonten.
- maxsize_condition
- int
Optionaler bedingter Header. Die maximale Länge in Bytes, die für das Anfügeblob zulässig ist. Wenn der Vorgang Block anfügen dazu führen würde, dass das Blob diesen Grenzwert überschreitet oder wenn die Blobgröße bereits größer als der in diesem Header angegebene Wert ist, schlägt die Anforderung mit dem Fehler MaxBlobSizeConditionNotMet (HTTP-status Code 412 – Vorbedingung fehlgeschlagen) fehl.
- max_concurrency
- int
Maximale Anzahl von parallelen Verbindungen, die verwendet werden sollen, wenn die Blobgröße 64 MB überschreitet.
Verschlüsselt die Daten auf der Dienstseite mit dem angegebenen Schlüssel. Die Verwendung von kundenseitig bereitgestellten Schlüsseln muss über HTTPS erfolgen. Da der Verschlüsselungsschlüssel selbst in der Anforderung bereitgestellt wird, muss eine sichere Verbindung hergestellt werden, um den Schlüssel zu übertragen.
- encryption_scope
- str
Ein vordefinierter Verschlüsselungsbereich, der zum Verschlüsseln der Daten im Dienst verwendet wird. Ein Verschlüsselungsbereich kann mithilfe der Verwaltungs-API erstellt und hier anhand des Namens referenziert werden. Wenn ein Standardverschlüsselungsbereich für den Container definiert wurde, überschreibt dieser Wert ihn, wenn der Bereich auf Containerebene so konfiguriert ist, dass Außerkraftsetzungen zugelassen werden. Andernfalls wird ein Fehler ausgelöst.
Neu in Version 12.2.0.
- encoding
- str
Der Standardwert ist UTF-8.
Ein Rückruf zum Nachverfolgen des Fortschritts eines Uploads mit langer Ausführungsdauer. Die Signatur ist function(current: int, total: Optional[int]), wobei current die Anzahl der bisher übertragenen Bytes und gesamt die Größe des Blobs oder Keine ist, wenn die Größe unbekannt ist.
Gibt zurück
Ein BlobClient für die Interaktion mit dem neu hochgeladenen Blob.
Rückgabetyp
walk_blobs
Gibt einen Generator zurück, der die Blobs unter dem angegebenen Container auflistet. Der Generator folgt den vom Dienst zurückgegebenen Fortsetzungstoken verzögert. Bei diesem Vorgang werden Blobs gemäß einer Hierarchie aufgelistet, die durch das angegebene Trennzeichen getrennt ist.
walk_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, delimiter: str = '/', **kwargs: Any | None) -> ItemPaged[BlobProperties]
Parameter
- name_starts_with
- str
Filtert die Ergebnisse, um nur BLOBs zurückgegeben, deren Namen mit dem angegebenen Präfix beginnen.
Gibt ein oder mehrere zusätzliche Datasets an, die in die Antwort eingeschlossen werden sollen. Zu den Optionen gehören: "snapshots", "metadata", "uncommittedblobs", "copy", "deletedwithversions", "tags", "versions", "immutabilitypolicy", "legalhold".
- delimiter
- str
Wenn die Anforderung diesen Parameter enthält, gibt der Vorgang ein BlobPrefix-Element im Antworttext zurück, das als Platzhalter für alle Blobs fungiert, deren Namen mit derselben Teilzeichenfolge beginnen, bis zur Darstellung des Trennzeichens. Das Trennzeichen kann ein einzelnes Zeichen oder eine Zeichenfolge sein.
- timeout
- int
Legt das serverseitige Timeout für den Vorgang in Sekunden fest. Weitere Informationen finden Sie unter https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Dieser Wert wird auf dem Client nicht nachverfolgt oder überprüft. Informationen zum Konfigurieren clientseitiger Netzwerktimeouts finden Sie hier.
Gibt zurück
Eine iterierbare Antwort (automatisches Paging) von BlobProperties.
Rückgabetyp
Attribute
api_version
Die Version der Speicher-API, die für Anforderungen verwendet wird.
location_mode
Der Standortmodus, den der Client derzeit verwendet.
Standardmäßig ist dies "primär". Zu den Optionen gehören "primär" und "sekundär".
primary_endpoint
Die vollständige URL des primären Endpunkts.
primary_hostname
Der Hostname des primären Endpunkts.
secondary_endpoint
Die vollständige url des sekundären Endpunkts, falls konfiguriert.
Wenn nicht verfügbar, wird ein ValueError ausgelöst. Wenn Sie einen sekundären Hostnamen explizit angeben möchten, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
Ausnahmen
secondary_hostname
Der Hostname des sekundären Endpunkts.
Wenn nicht verfügbar, lautet dies Keine. Wenn Sie einen sekundären Hostnamen explizit angeben möchten, verwenden Sie das optionale secondary_hostname Schlüsselwort (keyword) Argument für die Instanziierung.
url
Die vollständige Endpunkt-URL für diese Entität, einschließlich des SAS-Tokens, falls verwendet.
Dies kann abhängig vom aktuellen location_modeentweder der primäre Endpunkt oder der sekundäre Endpunkt sein. :returns: Die vollständige Endpunkt-URL für diese Entität, einschließlich des SAS-Tokens, falls verwendet. :rtype: str
Azure SDK for Python