Condividi tramite


ContainerClient Classe

Un client per interagire con un contenitore specifico, anche se tale contenitore potrebbe non esistere ancora.

Per le operazioni relative a un BLOB specifico all'interno di questo contenitore, è possibile recuperare un client BLOB usando la get_blob_client funzione.

Per altre configurazioni facoltative, fare clic qui.

Ereditarietà
azure.storage.blob._shared.base_client.StorageAccountHostsMixin
ContainerClient
azure.storage.blob._encryption.StorageEncryptionMixin
ContainerClient

Costruttore

ContainerClient(account_url: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)

Parametri

account_url
str
Necessario

URI dell'account di archiviazione. Per creare un client dato l'URI completo al contenitore, usare la from_container_url classemethod.

container_name
str
Necessario

Nome del contenitore per il BLOB.

credential
valore predefinito: None

Credenziali con cui eseguire l'autenticazione. Questo è facoltativo se l'URL dell'account ha già un token di firma di accesso condiviso. Il valore può essere una stringa di token sas, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credential, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Se l'URI della risorsa contiene già un token di firma di accesso condiviso, questo verrà ignorato a favore di una credenziale esplicita

  • tranne nel caso di AzureSasCredential, in cui i token sas in conflitto genereranno un valoreError. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.
api_version
str

Versione dell'API di archiviazione da usare per le richieste. Il valore predefinito è la versione del servizio più recente compatibile con l'SDK corrente. L'impostazione su una versione precedente può comportare una riduzione della compatibilità delle funzionalità.

Novità nella versione 12.2.0.

secondary_hostname
str

Nome host dell'endpoint secondario.

max_block_size
int

Dimensioni massime del blocco per il caricamento di un BLOB a blocchi in blocchi. Il valore predefinito è 41024 1024o 4 MB.

max_single_put_size
int

Se le dimensioni del BLOB sono inferiori o uguali max_single_put_size, il BLOB verrà caricato con una sola richiesta PUT http. Se la dimensione del BLOB è maggiore di max_single_put_size, il BLOB verrà caricato in blocchi. Il valore predefinito è 641024 1024o 64 MB.

min_large_block_upload_threshold
int

Dimensioni minime di blocchi necessarie per usare l'algoritmo efficiente per la memoria durante il caricamento di un BLOB a blocchi. Il valore predefinito è 41024 1024+1.

use_byte_buffer
bool

Usare un buffer di byte per i caricamenti BLOB in blocchi. Il valore predefinito è False.

max_page_size
int

Dimensioni massime del blocco per il caricamento di un BLOB di pagine. Il valore predefinito è 41024 1024o 4 MB.

max_single_get_size
int

Le dimensioni massime per il download di un BLOB in una singola chiamata, la parte superata verrà scaricata in blocchi (potrebbe essere parallela). Il valore predefinito è32 1024 1024o 32 MB.

max_chunk_get_size
int

Dimensioni massime del blocco utilizzato per il download di un BLOB. Il valore predefinito è 41024 1024o 4 MB.

Metodi

acquire_lease

Richiede un nuovo lease. Se il contenitore non dispone di un lease attivo, il servizio Blob crea un lease sul contenitore e restituisce un nuovo ID lease.

close

Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto.

create_container

Crea un nuovo contenitore nell'account specificato. Se un contenitore con lo stesso nome esiste già, l'operazione ha esito negativo.

delete_blob

Contrassegna il BLOB o lo snapshot specificato per l'eliminazione.

Il Blob verrà eliminato in seguito durante un'operazione di Garbage Collection. Si noti che per eliminare un Blob, è necessario eliminare tutti i relativi snapshot. È possibile eliminare entrambi contemporaneamente con l'operazione di delete_blob.

Se per il servizio è abilitato un criterio di conservazione di eliminazione, questa operazione elimina softmente il BLOB o lo snapshot e mantiene il BLOB o lo snapshot per il numero di giorni specificato. Dopo il numero specificato di giorni, i dati del BLOB vengono rimossi dal servizio durante l'operazione di Garbage Collection. È possibile accedere a BLOB o snapshot eliminati soft specificando list_blobs l'opzione include=["deleted"] . È possibile ripristinare un BLOB o uno snapshot eliminato soft tramite <xref:azure.storage.blob.BlobClient.undelete>

delete_blobs

Contrassegna i BLOB o gli snapshot specificati per l'eliminazione.

I BLOB vengono eliminati in un secondo momento durante l'operazione di Garbage Collection. Si noti che per eliminare i BLOB, è necessario eliminare tutti i relativi snapshot. È possibile eliminare entrambi contemporaneamente con l'operazione di delete_blobs.

Se per il servizio è abilitato un criterio di conservazione di eliminazione, questa operazione elimina softmente i BLOB o gli snapshot e mantiene i BLOB o gli snapshot per il numero di giorni specificato. Dopo il numero specificato di giorni, i dati dei BLOB vengono rimossi dal servizio durante l'operazione di Garbage Collection. I BLOB o gli snapshot eliminati soft sono accessibili specificando list_blobsinclude=["deleted"] È possibile ripristinare BLOB o snapshot eliminati soft tramite <xref:azure.storage.blob.BlobClient.undelete>

Il numero massimo di BLOB che è possibile eliminare in una singola richiesta è 256.

delete_container

Contrassegna il contenitore specificato per l'eliminazione. Il contenitore e tutti i BLOB in esso contenuti verranno eliminati in seguito durante un'operazione di Garbage Collection.

download_blob

Scarica un BLOB in StorageStreamDownloader. Il metodo readall() deve essere usato per leggere tutto il contenuto o readinto() per scaricare il BLOB in un flusso. L'uso di chunks() restituisce un iteratore che consente all'utente di scorrere il contenuto in blocchi.

exists

Restituisce True se esiste un contenitore e restituisce False in caso contrario.

find_blobs_by_tags

Restituisce un generatore per elencare i BLOB nel contenitore specificato i cui tag corrispondono all'espressione di ricerca specificata. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

from_connection_string

Creare ContainerClient da una stringa di connessione.

from_container_url

Creare ContainerClient da un URL del contenitore.

get_account_information

Ottiene informazioni correlate all'account di archiviazione.

Le informazioni possono essere recuperate anche se l'utente ha una firma di accesso condiviso a un contenitore o a un BLOB. Le chiavi nel dizionario restituito includono "sku_name" e "account_kind".

get_blob_client

Ottenere un client per interagire con il BLOB specificato.

Il BLOB non deve esistere già.

get_container_access_policy

Ottiene le autorizzazioni per il contenitore specificato. Le autorizzazioni indicano se i dati del contenitore sono accessibili pubblicamente.

get_container_properties

Restituisce tutti i metadati definiti dall'utente e le proprietà di sistema per il contenitore specificato. I dati restituiti non includono l'elenco di BLOB del contenitore.

list_blob_names

Restituisce un generatore per elencare i nomi dei BLOB nel contenitore specificato. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

Si noti che non verranno restituite proprietà o metadati aggiuntivi quando si usa questa API. Inoltre, questa API non dispone di un'opzione per includere BLOB aggiuntivi, ad esempio snapshot, versioni, BLOB eliminati temporaneamente e così via. Per ottenere uno di questi dati, usare list_blobs.

list_blobs

Restituisce un generatore per elencare i BLOB nel contenitore specificato. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

set_container_access_policy

Imposta le autorizzazioni per il contenitore specificato o i criteri di accesso archiviati che possono essere usati con firme di accesso condiviso. Le autorizzazioni indicano se i BLOB di un contenitore sono accessibili pubblicamente.

set_container_metadata

Imposta una o più coppie nome-valore definite dall'utente per il contenitore specificato. Ogni chiamata a questa operazione sostituisce tutti i metadati esistenti collegati al contenitore. Per rimuovere tutti i metadati dal contenitore, chiamare questa operazione senza dict di metadati.

set_premium_page_blob_tier_blobs

Imposta i livelli BLOB di pagine in tutti i BLOB. Questa API è supportata solo per i BLOB di pagine sugli account Premium.

Il numero massimo di BLOB che possono essere aggiornati in una singola richiesta è 256.

set_standard_blob_tier_blobs

Questa operazione imposta il livello sui BLOB in blocchi.

Il livello di un BLOB in blocchi determina il tipo di archiviazione ad accesso frequente/sporadico/archivio. Questa operazione non aggiorna l'ETag del BLOB.

Il numero massimo di BLOB che possono essere aggiornati in una singola richiesta è 256.

upload_blob

Crea un nuovo BLOB da un'origine dati con blocchi automatici.

walk_blobs

Restituisce un generatore per elencare i BLOB nel contenitore specificato. Il generatore seguirà i token di continuazione restituiti dal servizio. Questa operazione elenca i BLOB in base a una gerarchia, come delimitato dal carattere delimitatore specificato.

acquire_lease

Richiede un nuovo lease. Se il contenitore non dispone di un lease attivo, il servizio Blob crea un lease sul contenitore e restituisce un nuovo ID lease.

acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> BlobLeaseClient

Parametri

lease_duration
int
Necessario

Specifica la durata del lease, in secondi, o un uno negativo (-1) per un lease che non scade mai. Un lease non infinito può essere compreso tra 15 e 60 secondi. Non è possibile modificare una durata del lease usando il rinnovo o la modifica. Il valore predefinito è -1 (lease infinito).

lease_id
str
Necessario

ID lease proposto, in un formato di stringa GUID. Il servizio BLOB restituisce 400 (richiesta non valida) se l'ID lease proposto non è nel formato corretto.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore di data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore di data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è cambiata e agire in base alla condizione specificata dal parametro match_condition .

match_condition
MatchConditions

Condizione di corrispondenza da utilizzare sul etag.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Oggetto BLOBLeaseClient, che può essere eseguito in una gestione contesto.

Tipo restituito

close

Questo metodo consiste nel chiudere i socket aperti dal client. Non è necessario usare quando si usa con un gestore di contesto.

close()

create_container

Crea un nuovo contenitore nell'account specificato. Se un contenitore con lo stesso nome esiste già, l'operazione ha esito negativo.

create_container(metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs: Any) -> Dict[str, str | datetime]

Parametri

metadata
dict[str, str]
Necessario

Una dict con coppie name_value da associare al contenitore come metadati. Esempio:{'Category':'test'}

public_access
PublicAccess
Necessario

I valori possibili includono: 'contenitore', 'BLOB'.

container_encryption_scope
dict oppure ContainerEncryptionScope

Specifica l'ambito di crittografia predefinito da impostare nel contenitore e usare per tutte le scritture future.

Novità nella versione 12.2.0.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Dizionario delle intestazioni di risposta.

Tipo restituito

delete_blob

Contrassegna il BLOB o lo snapshot specificato per l'eliminazione.

Il Blob verrà eliminato in seguito durante un'operazione di Garbage Collection. Si noti che per eliminare un Blob, è necessario eliminare tutti i relativi snapshot. È possibile eliminare entrambi contemporaneamente con l'operazione di delete_blob.

Se per il servizio è abilitato un criterio di conservazione di eliminazione, questa operazione elimina softmente il BLOB o lo snapshot e mantiene il BLOB o lo snapshot per il numero di giorni specificato. Dopo il numero specificato di giorni, i dati del BLOB vengono rimossi dal servizio durante l'operazione di Garbage Collection. È possibile accedere a BLOB o snapshot eliminati soft specificando list_blobs l'opzione include=["deleted"] . È possibile ripristinare un BLOB o uno snapshot eliminato soft tramite <xref:azure.storage.blob.BlobClient.undelete>

delete_blob(blob: str | BlobProperties, delete_snapshots: str | None = None, **kwargs) -> None

Parametri

blob
str oppure BlobProperties
Necessario

BLOB con cui interagire. Se specificato, questo valore eseguirà l'override di un valore BLOB specificato nell'URL DEL BLOB.

delete_snapshots
str
Necessario

Obbligatoria se al Blob sono associati snapshot. I possibili valori sono:

  • "only": elimina solo gli snapshot dei BLOB.

  • "include": elimina il BLOB insieme a tutti gli snapshot.

version_id
str

Il parametro ID versione è un valore DateTime opaco che, quando presente, specifica la versione del BLOB da eliminare.

Novità nella versione 12.4.0.

Questo argomento della parola chiave è stato introdotto nella versione api '2019-12-12'.

lease
BlobLeaseClient oppure str

Obbligatoria se il Blob presenta un lease attivo. Il valore può essere un oggetto BlobLeaseClient o l'ID lease come stringa.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .

match_condition
MatchConditions

Condizione di corrispondenza da utilizzare sull'etag.

if_tags_match_condition
str

Specificare una clausola SQL where nei tag BLOB da usare solo nel BLOB con un valore corrispondente. Ad esempio: "\"tagname\"='my tag'"

Novità nella versione 12.4.0.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Tipo restituito

delete_blobs

Contrassegna i BLOB o gli snapshot specificati per l'eliminazione.

I BLOB vengono eliminati in un secondo momento durante l'operazione di Garbage Collection. Si noti che per eliminare i BLOB, è necessario eliminare tutti i relativi snapshot. È possibile eliminare entrambi contemporaneamente con l'operazione di delete_blobs.

Se per il servizio è abilitato un criterio di conservazione di eliminazione, questa operazione elimina softmente i BLOB o gli snapshot e mantiene i BLOB o gli snapshot per il numero di giorni specificato. Dopo il numero specificato di giorni, i dati dei BLOB vengono rimossi dal servizio durante l'operazione di Garbage Collection. I BLOB o gli snapshot eliminati soft sono accessibili specificando list_blobsinclude=["deleted"] È possibile ripristinare BLOB o snapshot eliminati soft tramite <xref:azure.storage.blob.BlobClient.undelete>

Il numero massimo di BLOB che è possibile eliminare in una singola richiesta è 256.

delete_blobs(*blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

Parametri

blobs
str oppure dict(str, Any) oppure BlobProperties
Necessario

BLOB da eliminare. Può trattarsi di un singolo BLOB o di più valori, in cui ogni valore è il nome del BLOB (str) o BlobProperties.

Nota

Quando il tipo di BLOB è dict, ecco un elenco di chiavi, regole valore.

nome BLOB:

key: 'name', value type: str

snapshot da eliminare:

key: 'snapshot', value type: str

id versione:

key: 'version_id', tipo valore: str

se eliminare gli snapshot durante l'eliminazione del BLOB:

key: 'delete_snapshots', value: 'include' o 'only'

se il BLOB è stato modificato o meno:

key: 'if_modified_since', 'if_unmodified_since', tipo di valore: datetime

Etag:

key: 'etag', tipo valore: str

corrispondono o meno all'etag:

key: 'match_condition', tipo di valore: MatchConditions

condizione di corrispondenza tag:

key: 'if_tags_match_condition', tipo valore: str

Locazione:

key: 'lease_id', valore type: Union[str, LeaseClient]

timeout per la sottoquery:

key: 'timeout', value type: int

delete_snapshots
str

Obbligatorio se a un BLOB sono associati snapshot. I possibili valori sono:

  • "only": elimina solo gli snapshot dei BLOB.

  • "include": elimina il BLOB insieme a tutti gli snapshot.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

if_tags_match_condition
str

Specificare una clausola SQL where nei tag BLOB da usare solo nel BLOB con un valore corrispondente. Ad esempio: "\"tagname\"='my tag'"

Novità nella versione 12.4.0.

raise_on_any_failure
bool

Si tratta di un parametro booleano che per impostazione predefinita è True. Quando questa impostazione viene impostata, viene generata un'eccezione anche se si verifica un singolo errore dell'operazione.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Iteratore di risposte, uno per ogni BLOB in ordine

Tipo restituito

delete_container

Contrassegna il contenitore specificato per l'eliminazione. Il contenitore e tutti i BLOB in esso contenuti verranno eliminati in seguito durante un'operazione di Garbage Collection.

delete_container(**kwargs: Any) -> None

Parametri

lease
BlobLeaseClient oppure str

Se specificato, delete_container ha esito positivo solo se il lease del contenitore è attivo e corrisponde a questo ID. Obbligatorio se il contenitore ha un lease attivo.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .

match_condition
MatchConditions

Condizione di corrispondenza da utilizzare sull'etag.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Tipo restituito

download_blob

Scarica un BLOB in StorageStreamDownloader. Il metodo readall() deve essere usato per leggere tutto il contenuto o readinto() per scaricare il BLOB in un flusso. L'uso di chunks() restituisce un iteratore che consente all'utente di scorrere il contenuto in blocchi.

download_blob(blob: str | BlobProperties, offset: int = None, length: int = None, *, encoding: str, **kwargs) -> StorageStreamDownloader[str]

Parametri

blob
str oppure BlobProperties
Necessario

BLOB con cui interagire. Se specificato, questo valore eseguirà l'override di un valore BLOB specificato nell'URL del BLOB.

offset
int
Necessario

Inizio dell'intervallo di byte da usare per il download di una sezione del BLOB. Deve essere impostato se viene specificata la lunghezza.

length
int
Necessario

Numero di byte da leggere dal flusso. Questa opzione è facoltativa, ma deve essere fornita per ottenere prestazioni ottimali.

version_id
str

Il parametro version id è un valore DateTime opaco che, quando presente, specifica la versione del BLOB da scaricare.

Novità nella versione 12.4.0.

Questo argomento della parola chiave è stato introdotto nella versione API '2019-12-12'.

validate_content
bool

Se true, calcola un hash MD5 per ogni blocco del BLOB. Il servizio di archiviazione controlla l'hash del contenuto che è arrivato con l'hash inviato. Ciò è particolarmente utile per rilevare bitflips in rete se si usa http anziché https, come https (impostazione predefinita), verrà già convalidata. Si noti che questo hash MD5 non viene archiviato con il Blob. Si noti anche che, se abilitato, l'algoritmo di caricamento efficiente della memoria non verrà usato perché il calcolo dell'hash MD5 richiede il buffering di interi blocchi e in questo modo lo scopo dell'algoritmo efficiente per la memoria.

lease
BlobLeaseClient oppure str

Obbligatoria se il Blob presenta un lease attivo. Se specificato, download_blob ha esito positivo solo se il lease del BLOB è attivo e corrisponde a questo ID. Il valore può essere un oggetto BlobLeaseClient o l'ID lease come stringa.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .

match_condition
MatchConditions

Condizione di corrispondenza da utilizzare sull'etag.

if_tags_match_condition
str

Specificare una clausola SQL where nei tag BLOB da usare solo nel BLOB con un valore corrispondente. Ad esempio: "\"tagname\"='my tag'"

Novità nella versione 12.4.0.

cpk
CustomerProvidedEncryptionKey

Crittografa i dati sul lato servizio con la chiave specificata. L'uso delle chiavi fornite dal cliente deve essere eseguito su HTTPS. Poiché la chiave di crittografia stessa viene fornita nella richiesta, è necessario stabilire una connessione protetta per trasferire la chiave.

max_concurrency
int

Numero di connessioni parallele da scaricare.

encoding
str

Codifica per decodificare i byte scaricati. Il valore predefinito è Nessuno, ad esempio nessuna decodifica.

progress_hook
Callable[[int, int], None]

Callback per tenere traccia dello stato di avanzamento di un download a esecuzione prolungata. La firma è function(current: int, total: int) dove current è il numero di byte trasferiti finora e il totale è la dimensione totale del download.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui. Questo metodo può effettuare più chiamate al servizio e il timeout verrà applicato singolarmente a ogni chiamata. più chiamate al servizio di Azure e il timeout verrà applicato singolarmente a ogni chiamata.

Restituisce

Oggetto di streaming (StorageStreamDownloader)

Tipo restituito

exists

Restituisce True se esiste un contenitore e restituisce False in caso contrario.

exists(**kwargs: Any) -> bool

Parametri

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

boolean

Tipo restituito

find_blobs_by_tags

Restituisce un generatore per elencare i BLOB nel contenitore specificato i cui tag corrispondono all'espressione di ricerca specificata. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

find_blobs_by_tags(filter_expression: str, **kwargs: Any | None) -> ItemPaged[FilteredBlob]

Parametri

filter_expression
str
Necessario

Espressione per trovare i BLOB i cui tag corrispondono alla condizione specificata. Ad esempio: ""yourtagname"='firsttag' e "yourtagname2"='secondtag'"

results_per_page
int

Risultato massimo per pagina durante la paginazione.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Risposta iterabile (paging automatico) di FilteredBlob.

Tipo restituito

from_connection_string

Creare ContainerClient da una stringa di connessione.

from_connection_string(conn_str: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Parametri

conn_str
str
Necessario

Stringa di connessione a un account di archiviazione di Azure.

container_name
str
Necessario

Nome del contenitore per il BLOB.

credential
valore predefinito: None

Credenziali con cui eseguire l'autenticazione. Questa opzione è facoltativa se l'URL dell'account ha già un token di firma di accesso condiviso o la stringa di connessione ha già valori di chiave di accesso condiviso. Il valore può essere una stringa di token di firma di accesso condiviso, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credentials, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Le credenziali fornite qui avranno la precedenza su quelle nella stringa di connessione. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.

Restituisce

Un client contenitore.

Tipo restituito

from_container_url

Creare ContainerClient da un URL del contenitore.

from_container_url(container_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self

Parametri

container_url
str
Necessario

URL completo dell'endpoint per il contenitore, incluso il token di firma di accesso condiviso, se usato. Può trattarsi dell'endpoint primario o dell'endpoint secondario a seconda del location_mode corrente.

credential
valore predefinito: None

Credenziali con cui eseguire l'autenticazione. Questa opzione è facoltativa se l'URL dell'account ha già un token di firma di accesso condiviso o la stringa di connessione ha già valori di chiave di accesso condiviso. Il valore può essere una stringa di token di firma di accesso condiviso, un'istanza di AzureSasCredential o AzureNamedKeyCredential da azure.core.credentials, una chiave di accesso condiviso dell'account o un'istanza di una classe TokenCredentials da azure.identity. Se l'URI della risorsa contiene già un token di firma di accesso condiviso, verrà ignorato a favore di una credenziale esplicita

  • tranne nel caso di AzureSasCredential, in cui i token di firma di accesso condiviso in conflitto genereranno un ValoreError. Se si usa un'istanza di AzureNamedKeyCredential, "name" deve essere il nome dell'account di archiviazione e "key" deve essere la chiave dell'account di archiviazione.

Restituisce

Un client contenitore.

Tipo restituito

get_account_information

Ottiene informazioni correlate all'account di archiviazione.

Le informazioni possono essere recuperate anche se l'utente ha una firma di accesso condiviso a un contenitore o a un BLOB. Le chiavi nel dizionario restituito includono "sku_name" e "account_kind".

get_account_information(**kwargs: Any) -> Dict[str, str]

Restituisce

Dict of account information (SKU and account type).

Tipo restituito

get_blob_client

Ottenere un client per interagire con il BLOB specificato.

Il BLOB non deve esistere già.

get_blob_client(blob: str | BlobProperties, snapshot: str = None, *, version_id: str | None = None) -> BlobClient

Parametri

blob
str oppure BlobProperties
Necessario

BLOB con cui interagire.

snapshot
str
valore predefinito: None

Snapshot BLOB facoltativo in cui operare. Può trattarsi della stringa dell'ID snapshot o della risposta restituita da create_snapshot.

version_id
str

Il parametro version id è un valore DateTime opaco su cui, se presente, specifica la versione del BLOB su cui operare.

Restituisce

A BlobClient.

Tipo restituito

get_container_access_policy

Ottiene le autorizzazioni per il contenitore specificato. Le autorizzazioni indicano se i dati del contenitore sono accessibili pubblicamente.

get_container_access_policy(**kwargs: Any) -> Dict[str, Any]

Parametri

lease
BlobLeaseClient oppure str

Se specificato, get_container_access_policy ha esito positivo solo se il lease del contenitore è attivo e corrisponde a questo ID.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Accedere alle informazioni sui criteri in un dict.

Tipo restituito

get_container_properties

Restituisce tutti i metadati definiti dall'utente e le proprietà di sistema per il contenitore specificato. I dati restituiti non includono l'elenco di BLOB del contenitore.

get_container_properties(**kwargs: Any) -> ContainerProperties

Parametri

lease
BlobLeaseClient oppure str

Se specificato, get_container_properties ha esito positivo solo se il lease del contenitore è attivo e corrisponde a questo ID.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Proprietà per il contenitore specificato all'interno di un oggetto contenitore.

Tipo restituito

list_blob_names

Restituisce un generatore per elencare i nomi dei BLOB nel contenitore specificato. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

Si noti che non verranno restituite proprietà o metadati aggiuntivi quando si usa questa API. Inoltre, questa API non dispone di un'opzione per includere BLOB aggiuntivi, ad esempio snapshot, versioni, BLOB eliminati temporaneamente e così via. Per ottenere uno di questi dati, usare list_blobs.

list_blob_names(**kwargs: Any) -> ItemPaged[str]

Parametri

name_starts_with
str

Filtra i risultati in modo che vengano restituiti solo i BLOB i cui nomi iniziano con il prefisso specificato.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Risposta iterabile (paging automatico) dei nomi dei BLOB come stringhe.

Tipo restituito

list_blobs

Restituisce un generatore per elencare i BLOB nel contenitore specificato. Il generatore seguirà in modo differimento i token di continuazione restituiti dal servizio.

list_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, **kwargs: Any) -> ItemPaged[BlobProperties]

Parametri

name_starts_with
str
Necessario

Filtra i risultati in modo che vengano restituiti solo i BLOB i cui nomi iniziano con il prefisso specificato.

include
list[str] oppure str
Necessario

Specifica uno o più set di dati aggiuntivi da includere nella risposta. Le opzioni includono: 'snapshots', 'metadata', 'uncommittedblobs', 'copy', 'deleted', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Risposta iterabile (paging automatico) di BlobProperties.

Tipo restituito

set_container_access_policy

Imposta le autorizzazioni per il contenitore specificato o i criteri di accesso archiviati che possono essere usati con firme di accesso condiviso. Le autorizzazioni indicano se i BLOB di un contenitore sono accessibili pubblicamente.

set_container_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs) -> Dict[str, str | datetime]

Parametri

signed_identifiers
dict[str, AccessPolicy]
Necessario

Dizionario dei criteri di accesso da associare al contenitore. Il dizionario può contenere fino a 5 elementi. Un dizionario vuoto cancella i criteri di accesso impostati nel servizio.

public_access
PublicAccess
Necessario

I valori possibili includono: 'container', 'blob'.

lease
BlobLeaseClient oppure str

Obbligatorio se il contenitore ha un lease attivo. Il valore può essere un oggetto BlobLeaseClient o l'ID lease come stringa.

if_modified_since
datetime

Valore datetime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo la data/ora specificata.

if_unmodified_since
datetime

Valore datetime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Dict della proprietà aggiornata dal contenitore (Etag e ultima modifica).

Tipo restituito

set_container_metadata

Imposta una o più coppie nome-valore definite dall'utente per il contenitore specificato. Ogni chiamata a questa operazione sostituisce tutti i metadati esistenti collegati al contenitore. Per rimuovere tutti i metadati dal contenitore, chiamare questa operazione senza dict di metadati.

set_container_metadata(metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]

Parametri

metadata
dict[str, str]
Necessario

Dict contenente coppie nome-valore da associare al contenitore come metadati. Esempio: {'category':'test'}

lease
BlobLeaseClient oppure str

Se specificato, set_container_metadata ha esito positivo solo se il lease del contenitore è attivo e corrisponde a questo ID.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Dict della proprietà aggiornata dal contenitore (Etag e ultima modifica).

Tipo restituito

set_premium_page_blob_tier_blobs

Imposta i livelli BLOB di pagine in tutti i BLOB. Questa API è supportata solo per i BLOB di pagine sugli account Premium.

Il numero massimo di BLOB che possono essere aggiornati in una singola richiesta è 256.

set_premium_page_blob_tier_blobs(premium_page_blob_tier: str | PremiumPageBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

Parametri

premium_page_blob_tier
PremiumPageBlobTier
Necessario

Valore del livello BLOB di pagine su cui impostare il BLOB. Il livello è correlato alle dimensioni del BLOB e al numero di operazioni di I/O al secondo consentite. Questo è applicabile solo ai BLOB di pagine per gli account di archiviazione Premium.

Nota

Se si vuole impostare un livello diverso in BLOB diversi, impostare questo parametro posizionale su Nessuno.

Verrà quindi acquisito il livello BLOB in ogni BLOBProperties.

blobs
str oppure dict(str, Any) oppure BlobProperties
Necessario

BLOB con cui interagire. Può trattarsi di un singolo BLOB o di più valori, in cui ogni valore è il nome del BLOB (str) o BlobProperties.

Nota

Quando il tipo di BLOB è dict, ecco un elenco di chiavi, regole valore.

nome BLOB:

key: 'name', value type: str

Livello BLOB Premium:

key: 'blob_tier', valore type: PremiumPageBlobTier

Locazione:

key: 'lease_id', valore type: Union[str, LeaseClient]

timeout per la sottoquery:

key: 'timeout', value type: int

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

raise_on_any_failure
bool

Si tratta di un parametro booleano che per impostazione predefinita è True. Quando questa impostazione viene impostata, viene generata un'eccezione anche se si verifica un singolo errore dell'operazione.

Restituisce

Iteratore di risposte, uno per ogni BLOB in ordine

Tipo restituito

<xref:iterator>[HttpResponse]

set_standard_blob_tier_blobs

Questa operazione imposta il livello sui BLOB in blocchi.

Il livello di un BLOB in blocchi determina il tipo di archiviazione ad accesso frequente/sporadico/archivio. Questa operazione non aggiorna l'ETag del BLOB.

Il numero massimo di BLOB che possono essere aggiornati in una singola richiesta è 256.

set_standard_blob_tier_blobs(standard_blob_tier: str | StandardBlobTier | None, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> Iterator[HttpResponse]

Parametri

standard_blob_tier
str oppure StandardBlobTier
Necessario

Indica il livello da impostare su tutti i BLOB. Le opzioni includono "Hot", "Cool", "Archive". Il livello ad accesso frequente è ottimizzato per l'archiviazione dei dati a cui si accede di frequente. Il livello di archiviazione ad accesso sporadico è ottimizzato per l'archiviazione dei dati a cui si accede raramente e archiviati per almeno un mese. Il livello archivio è ottimizzato per l'archiviazione dei dati a cui si accede raramente e che viene archiviato per almeno sei mesi con requisiti di latenza flessibili.

Nota

Se si vuole impostare un livello diverso in BLOB diversi, impostare questo parametro posizionale su Nessuno.

Verrà quindi acquisito il livello BLOB in ogni BLOBProperties.

blobs
str oppure dict(str, Any) oppure BlobProperties
Necessario

BLOB con cui interagire. Può trattarsi di un singolo BLOB o di più valori, in cui ogni valore è il nome del BLOB (str) o BlobProperties.

Nota

Quando il tipo di BLOB è dict, ecco un elenco di chiavi, regole valore.

nome BLOB:

key: 'name', value type: str

Livello BLOB standard:

key: 'blob_tier', value type: StandardBlobTier

priorità di riattivazione:

key: 'rehydrate_priority', tipo di valore: RehydratePriority

Locazione:

key: 'lease_id', valore type: Union[str, LeaseClient]

Snapshot:

key: "snapshot", tipo di valore: str

id versione:

key: "version_id", tipo valore: str

condizione di corrispondenza tag:

key: 'if_tags_match_condition', tipo valore: str

timeout per la sottoquery:

key: 'timeout', value type: int

rehydrate_priority
RehydratePriority

Indica la priorità con cui riattivare un BLOB archiviato

if_tags_match_condition
str

Specificare una clausola SQL where nei tag BLOB da usare solo nel BLOB con un valore corrispondente. Ad esempio: "\"tagname\"='my tag'"

Novità nella versione 12.4.0.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene rilevato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

raise_on_any_failure
bool

Si tratta di un parametro booleano che per impostazione predefinita è True. Quando questa impostazione viene impostata, viene generata un'eccezione anche se si verifica un singolo errore dell'operazione.

Restituisce

Iteratore di risposte, uno per ogni BLOB in ordine

Tipo restituito

upload_blob

Crea un nuovo BLOB da un'origine dati con blocchi automatici.

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

Parametri

name
str oppure BlobProperties
Necessario

BLOB con cui interagire. Se specificato, questo valore eseguirà l'override di un valore BLOB specificato nell'URL del BLOB.

data
Necessario

Dati BLOB da caricare.

blob_type
BlobType
Necessario

Tipo dell'oggetto BLOB. Può trattarsi di BlockBlob, PageBlob o AppendBlob. Il valore predefinito è BlockBlob.

length
int
Necessario

Numero di byte da leggere dal flusso. Questa opzione è facoltativa, ma deve essere fornita per ottenere prestazioni ottimali.

metadata
dict(str, str)
Necessario

Coppie nome-valore associate al Blob come metadati.

overwrite
bool

Indica se il BLOB da caricare deve sovrascrivere i dati correnti. Se True, upload_blob sovrascriverà i dati esistenti. Se impostato su False, l'operazione avrà esito negativo con ResourceExistsError. L'eccezione a quella precedente è costituita dai tipi di BLOB Append: se è impostata su False e i dati esistono già, non verrà generato un errore e i dati verranno aggiunti al BLOB esistente. Se impostato overwrite=True, il BLOB di accodamento esistente verrà eliminato e ne verrà creato uno nuovo. Il valore predefinito è False.

content_settings
ContentSettings

Oggetto ContentSettings utilizzato per impostare le proprietà del BLOB. Usato per impostare il tipo di contenuto, la codifica, la lingua, l'eliminazione, md5 e il controllo della cache.

validate_content
bool

Se true, calcola un hash MD5 per ogni blocco del BLOB. Il servizio di archiviazione controlla l'hash del contenuto che è arrivato con l'hash inviato. Ciò è particolarmente utile per rilevare bitflips in rete se si usa http anziché https, come https (impostazione predefinita), verrà già convalidata. Si noti che questo hash MD5 non viene archiviato con il Blob. Si noti anche che, se abilitato, l'algoritmo di caricamento efficiente per la memoria non verrà usato, perché il calcolo dell'hash MD5 richiede il buffering di interi blocchi e in questo modo lo scopo dell'algoritmo efficiente per la memoria.

lease
BlobLeaseClient oppure str

Obbligatorio se il contenitore ha un lease attivo. Il valore può essere un oggetto BlobLeaseClient o l'ID lease come stringa.

if_modified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa è stata modificata dopo l'ora specificata.

if_unmodified_since
datetime

Valore DateTime. Azure prevede che il valore della data passato sia UTC. Se il fuso orario è incluso, le datetime non UTC verranno convertite in formato UTC. Se una data viene passata senza informazioni sul fuso orario, si presuppone che sia UTC. Specificare questa intestazione per eseguire l'operazione solo se la risorsa non è stata modificata dopo l'ora e la data specificate.

etag
str

Valore ETag o il carattere jolly (*). Usato per verificare se la risorsa è stata modificata e agire in base alla condizione specificata dal parametro match_condition .

match_condition
MatchConditions

Condizione di corrispondenza da utilizzare sull'etag.

if_tags_match_condition
str

Specificare una clausola SQL where nei tag BLOB da usare solo nel BLOB con un valore corrispondente. Ad esempio: "\"tagname\"='my tag'"

Novità nella versione 12.4.0.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui. Questo metodo può effettuare più chiamate al servizio e il timeout verrà applicato singolarmente a ogni chiamata.

premium_page_blob_tier
PremiumPageBlobTier

Valore del livello BLOB di pagina su cui impostare il BLOB. Il livello è correlato alle dimensioni del BLOB e al numero di operazioni di I/O al secondo consentite. Questa operazione è applicabile solo ai BLOB di pagine in account di archiviazione Premium.

standard_blob_tier
StandardBlobTier

Valore del livello BLOB standard su cui impostare il BLOB. Per questa versione della libreria, questa operazione è applicabile solo ai BLOB in blocchi negli account di archiviazione standard.

maxsize_condition
int

Intestazione condizionale facoltativa. Lunghezza massima in byte consentita per il BLOB di accodamento. Se l'operazione Append Block causa il superamento del limite del BLOB o se la dimensione del BLOB è già maggiore del valore specificato in questa intestazione, la richiesta avrà esito negativo con l'errore MaxBlobSizeConditionNotMet (codice di stato HTTP 412 - Precondizione non riuscita).

max_concurrency
int

Numero massimo di connessioni parallele da usare quando la dimensione del BLOB supera 64 MB.

cpk
CustomerProvidedEncryptionKey

Crittografa i dati sul lato servizio con la chiave specificata. L'uso delle chiavi fornite dal cliente deve essere eseguito tramite HTTPS. Poiché la chiave di crittografia stessa viene fornita nella richiesta, è necessario stabilire una connessione sicura per trasferire la chiave.

encryption_scope
str

Ambito di crittografia predefinito usato per crittografare i dati nel servizio. È possibile creare un ambito di crittografia usando l'API Gestione e fare riferimento qui in base al nome. Se nel contenitore è stato definito un ambito di crittografia predefinito, questo valore verrà sottoposto a override se l'ambito a livello di contenitore è configurato per consentire l'override. In caso contrario, verrà generato un errore.

Novità nella versione 12.2.0.

encoding
str

Impostazione predefinita su UTF-8.

progress_hook
Callable[[int, Optional[int]], None]

Callback per tenere traccia dello stato di avanzamento di un caricamento a esecuzione prolungata. La firma è function(current: int, total: Optional[int]) dove current è il numero di byte trasferiti finora e il totale è la dimensione del BLOB o Nessuno se la dimensione è sconosciuta.

Restituisce

BlobClient per interagire con il BLOB appena caricato.

Tipo restituito

walk_blobs

Restituisce un generatore per elencare i BLOB nel contenitore specificato. Il generatore seguirà i token di continuazione restituiti dal servizio. Questa operazione elenca i BLOB in base a una gerarchia, come delimitato dal carattere delimitatore specificato.

walk_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, delimiter: str = '/', **kwargs: Any | None) -> ItemPaged[BlobProperties]

Parametri

name_starts_with
str
Necessario

Filtra i risultati in modo che vengano restituiti solo i BLOB i cui nomi iniziano con il prefisso specificato.

include
list[str] oppure str
Necessario

Specifica uno o più set di dati aggiuntivi da includere nella risposta. Le opzioni includono: 'snapshots', 'metadata', 'uncommittedblobs', 'copy', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

delimiter
str
Necessario

Quando la richiesta include questo parametro, l'operazione restituisce un elemento BLOBPrefix nel corpo della risposta che funge da segnaposto per tutti i BLOB i cui nomi iniziano con la stessa sottostringa fino all'aspetto del carattere delimitatore. Il delimitatore può essere un singolo carattere o una stringa.

timeout
int

Imposta il timeout lato server per l'operazione in secondi. Per informazioni dettagliate, vedere https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Questo valore non viene monitorato o convalidato nel client. Per configurare i timeout di rete lato client, vedere qui.

Restituisce

Risposta iterabile (paging automatico) di BLOBProperties.

Tipo restituito

Attributi

api_version

Versione dell'API di archiviazione usata per le richieste.

location_mode

Modalità percorso attualmente usata dal client.

Per impostazione predefinita, questo sarà "primario". Le opzioni includono "primary" e "secondary".

primary_endpoint

URL dell'endpoint primario completo.

primary_hostname

Nome host dell'endpoint primario.

secondary_endpoint

URL dell'endpoint secondario completo se configurato.

Se non è disponibile, verrà generato un valore ValueError. Per specificare in modo esplicito un nome host secondario, usare l'argomento della parola chiave facoltativo secondary_hostname nell'istanza.

Eccezioni

secondary_hostname

Nome host dell'endpoint secondario.

Se non è disponibile, questo sarà Nessuno. Per specificare in modo esplicito un nome host secondario, usare l'argomento della parola chiave facoltativo secondary_hostname nell'istanza.

url

URL completo dell'endpoint per questa entità, incluso il token di firma di accesso condiviso se usato.

Questo potrebbe essere l'endpoint primario o l'endpoint secondario a seconda dell'oggetto corrente location_mode. :restituisce: URL completo dell'endpoint per questa entità, incluso il token di firma di accesso condiviso se usato. :rtype: str