ContainerClient Klasa
Klient do interakcji z określonym kontenerem, chociaż ten kontener może jeszcze nie istnieć.
W przypadku operacji związanych z określonym obiektem blob w tym kontenerze można pobrać klienta obiektu blob przy użyciu get_blob_client funkcji .
- Dziedziczenie
-
azure.storage.blob._shared.base_client_async.AsyncStorageAccountHostsMixinContainerClientazure.storage.blob._container_client.ContainerClientContainerClientazure.storage.blob._encryption.StorageEncryptionMixinContainerClient
Konstruktor
ContainerClient(account_url: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | AsyncTokenCredential | None = None, **kwargs: Any)
Parametry
- account_url
- str
Identyfikator URI konta magazynu. Aby utworzyć klienta z pełnym identyfikatorem URI kontenera, użyj from_container_url klasymethod.
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token SAS. Wartość może być ciągiem tokenu SYGNATURy dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z pliku azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z pliku azure.identity. Jeśli identyfikator URI zasobu zawiera już token SAS, zostanie on zignorowany na rzecz jawnego poświadczenia
- z wyjątkiem przypadku elementu AzureSasCredential, gdzie powodujące konflikt tokeny SYGNATURy dostępu współdzielonego spowodują wywołanie błędu ValueError. Jeśli używasz wystąpienia obiektu AzureNamedKeyCredential, "name" powinien być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
- api_version
- str
Wersja interfejsu API usługi Storage do użycia dla żądań. Wartość domyślna to najnowsza wersja usługi zgodna z bieżącym zestawem SDK. Ustawienie starszej wersji może spowodować zmniejszenie zgodności funkcji.
Nowość w wersji 12.2.0.
- secondary_hostname
- str
Nazwa hosta pomocniczego punktu końcowego.
- max_block_size
- int
Maksymalny rozmiar fragmentu przekazywania blokowego obiektu blob we fragmentach. Domyślnie 41024 1024lub 4 MB.
- max_single_put_size
- int
Jeśli rozmiar obiektu blob jest mniejszy lub równy max_single_put_size, obiekt blob zostanie przekazany przy użyciu tylko jednego żądania HTTP PUT. Jeśli rozmiar obiektu blob jest większy niż max_single_put_size, obiekt blob zostanie przekazany we fragmentach. Wartość domyślna to 641024 1024lub 64 MB.
- min_large_block_upload_threshold
- int
Minimalny rozmiar fragmentu wymagany do korzystania z algorytmu wydajnego pamięci podczas przekazywania blokowego obiektu blob. Wartość domyślna to 41024 1024+1.
- use_byte_buffer
- bool
Użyj buforu bajtów na potrzeby przekazywania blokowych obiektów blob. Wartość domyślna to False.
- max_page_size
- int
Maksymalny rozmiar fragmentu do przekazywania stronicowego obiektu blob. Domyślnie 41024 1024lub 4 MB.
- max_single_get_size
- int
Maksymalny rozmiar obiektu blob, który ma zostać pobrany w jednym wywołaniu, przekroczona część zostanie pobrana we fragmentach (może być równoległa). Wartość domyślna to 321024 1024lub 32 MB.
- max_chunk_get_size
- int
Maksymalny rozmiar fragmentu używany do pobierania obiektu blob. Domyślnie 41024 1024lub 4 MB.
Metody
acquire_lease |
Żąda nowej dzierżawy. Jeśli kontener nie ma aktywnej dzierżawy, usługa Blob service tworzy dzierżawę kontenera i zwraca nowy identyfikator dzierżawy. |
close |
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu. |
create_container |
Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem. |
delete_blob |
Oznacza określony obiekt blob lub migawkę do usunięcia. Obiekt blob zostanie później usunięty podczas odzyskiwania pamięci. Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba można usunąć jednocześnie za pomocą operacji delete_blob. Jeśli dla usługi włączono zasady przechowywania usuwania, ta operacja nietrwała usuwa obiekt blob lub migawkę i zachowuje obiekt blob lub migawkę przez określoną liczbę dni. Po określonej liczbie dni dane obiektu blob zostaną usunięte z usługi podczas odzyskiwania pamięci. Nietrwałe obiekty blob lub migawki są dostępne za pomocą list_blobs określania parametru include=["deleted"] Nietrwałe usunięte obiekty blob lub migawki można przywrócić przy użyciu polecenia <xref:azure.storage.blob.aio.BlobClient.undelete> |
delete_blobs |
Oznacza określone obiekty blob lub migawki do usunięcia. Obiekty blob są później usuwane podczas odzyskiwania pamięci. Pamiętaj, że aby usunąć obiekty blob, należy usunąć wszystkie ich migawki. Oba można usunąć jednocześnie za pomocą operacji delete_blobs. Jeśli dla usługi włączono zasady przechowywania usuwania, ta operacja nietrwała usuwa obiekty blob lub migawki i zachowuje obiekty blob lub migawki przez określoną liczbę dni. Po określonej liczbie dni dane obiektów blob są usuwane z usługi podczas odzyskiwania pamięci. Nietrwałe obiekty blob lub migawki są dostępne za pomocą list_blobs określania parametru include=["deleted"] Nietrwałe usunięte obiekty blob lub migawki można przywrócić przy użyciu polecenia <xref:azure.storage.blob.aio.BlobClient.undelete> Maksymalna liczba obiektów blob, które można usunąć w pojedynczym żądaniu, wynosi 256. |
delete_container |
Oznacza określony kontener do usunięcia. Kontener i wszystkie zawarte w nim obiekty blob są później usuwane podczas odzyskiwania pamięci. |
download_blob |
Pobiera obiekt blob do obiektu StorageStreamDownloader. Metoda readall() musi służyć do odczytywania całej zawartości lub readinto() do pobrania obiektu blob do strumienia. Użycie fragmentów() zwraca iterator asynchroniczny, który umożliwia użytkownikowi iterowanie zawartości we fragmentach. |
exists |
Zwraca wartość True, jeśli kontener istnieje i zwraca wartość False w przeciwnym razie. |
find_blobs_by_tags |
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze, którego tagi pasują do danego wyrażenia wyszukiwania. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę. |
from_connection_string |
Utwórz element ContainerClient na podstawie parametrów połączenia. |
from_container_url |
Utwórz element ContainerClient na podstawie adresu URL kontenera. |
get_account_information |
Pobiera informacje związane z kontem magazynu. Informacje można również pobrać, jeśli użytkownik ma sygnaturę dostępu współdzielonego do kontenera lub obiektu blob. Klucze w zwróconym słowniku obejmują "sku_name" i "account_kind". |
get_blob_client |
Pobierz klienta do interakcji z określonym obiektem blob. Obiekt blob nie musi już istnieć. |
get_container_access_policy |
Pobiera uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy dane kontenera mogą być dostępne publicznie. |
get_container_properties |
Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego kontenera. Zwrócone dane nie zawierają listy obiektów blob kontenera. |
list_blob_names |
Zwraca generator, aby wyświetlić listę nazw obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę. Należy pamiętać, że podczas korzystania z tego interfejsu API nie będą zwracane żadne dodatkowe właściwości ani metadane. Ponadto ten interfejs API nie ma możliwości uwzględnienia dodatkowych obiektów blob, takich jak migawki, wersje, obiekty blob usunięte nietrwale itp. Aby uzyskać dowolne z tych danych, użyj polecenia list_blobs. |
list_blobs |
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę. |
set_container_access_policy |
Ustawia uprawnienia dla określonego kontenera lub przechowywanych zasad dostępu, które mogą być używane z sygnaturami dostępu współdzielonego. Uprawnienia wskazują, czy obiekty blob w kontenerze mogą być dostępne publicznie. |
set_container_metadata |
Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego kontenera. Każde wywołanie tej operacji zastępuje wszystkie istniejące metadane dołączone do kontenera. Aby usunąć wszystkie metadane z kontenera, wywołaj tę operację bez dyktowania metadanych. |
set_premium_page_blob_tier_blobs |
Ustawia warstwy stronicowych obiektów blob w obiektach blob. Ten interfejs API jest obsługiwany tylko w przypadku stronicowych obiektów blob na kontach w warstwie Premium. Maksymalna liczba obiektów blob, które można zaktualizować w jednym żądaniu, wynosi 256. |
set_standard_blob_tier_blobs |
Ta operacja ustawia warstwę blokowych obiektów blob. Warstwa blokowego obiektu blob określa typ magazynu Gorąca/Chłodna/Archiwum. Ta operacja nie aktualizuje elementu ETag obiektu blob. Maksymalna liczba obiektów blob, które można zaktualizować w jednym żądaniu, wynosi 256. |
upload_blob |
Tworzy nowy obiekt blob ze źródła danych z automatycznym fragmentowaniem. |
walk_blobs |
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę. Ta operacja spowoduje wyświetlenie listy obiektów blob zgodnie z hierarchią rozdzielaną określonym znakiem ogranicznika. |
acquire_lease
Żąda nowej dzierżawy. Jeśli kontener nie ma aktywnej dzierżawy, usługa Blob service tworzy dzierżawę kontenera i zwraca nowy identyfikator dzierżawy.
async acquire_lease(lease_duration: int = -1, lease_id: str | None = None, **kwargs) -> BlobLeaseClient
Parametry
- lease_duration
- int
Określa czas trwania dzierżawy, w sekundach lub ujemny (-1) dla dzierżawy, która nigdy nie wygasa. Dzierżawa nieskończenie nieskończona może należeć do zakresu od 15 do 60 sekund. Nie można zmienić czasu trwania dzierżawy przy użyciu odnowienia lub zmiany. Wartość domyślna to -1 (nieskończona dzierżawa).
- lease_id
- str
Proponowany identyfikator dzierżawy w formacie ciągu identyfikatora GUID. Usługa Blob Service zwraca wartość 400 (nieprawidłowe żądanie), jeśli proponowany identyfikator dzierżawy nie ma poprawnego formatu.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Obiekt BlobLeaseClient, który można uruchomić w menedżerze kontekstu.
Typ zwracany
close
Ta metoda polega na zamknięciu gniazd otwartych przez klienta. Nie trzeba jej używać w przypadku używania z menedżerem kontekstu.
async close()
create_container
Tworzy nowy kontener w ramach określonego konta. Jeśli kontener o tej samej nazwie już istnieje, operacja zakończy się niepowodzeniem.
async create_container(metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs: Any) -> Dict[str, str | datetime]
Parametry
Dykt z name_value parami do skojarzenia z kontenerem jako metadanymi. Przykład:{'Category':'test'}
- container_encryption_scope
- dict lub ContainerEncryptionScope
Określa domyślny zakres szyfrowania, aby ustawić w kontenerze i używać dla wszystkich przyszłych zapisów.
Nowość w wersji 12.2.0.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Słownik nagłówków odpowiedzi.
Typ zwracany
delete_blob
Oznacza określony obiekt blob lub migawkę do usunięcia.
Obiekt blob zostanie później usunięty podczas odzyskiwania pamięci. Należy pamiętać, że aby usunąć obiekt blob, należy usunąć wszystkie jego migawki. Oba można usunąć jednocześnie za pomocą operacji delete_blob.
Jeśli dla usługi włączono zasady przechowywania usuwania, ta operacja nietrwała usuwa obiekt blob lub migawkę i zachowuje obiekt blob lub migawkę przez określoną liczbę dni. Po określonej liczbie dni dane obiektu blob zostaną usunięte z usługi podczas odzyskiwania pamięci. Nietrwałe obiekty blob lub migawki są dostępne za pomocą list_blobs określania parametru include=["deleted"] Nietrwałe usunięte obiekty blob lub migawki można przywrócić przy użyciu polecenia <xref:azure.storage.blob.aio.BlobClient.undelete>
async delete_blob(blob: str | BlobProperties, delete_snapshots: str | None = None, **kwargs) -> None
Parametry
- blob
- str lub BlobProperties
Obiekt blob, z którym należy korzystać. Jeśli ta wartość zostanie określona, zastąpi wartość obiektu blob określoną w adresie URL obiektu blob.
- delete_snapshots
- str
Wymagane, jeśli obiekt blob ma skojarzone migawki. Wartości są następujące:
"only": usuwa tylko migawki obiektów blob.
"include": usuwa obiekt blob wraz ze wszystkimi migawkami.
- version_id
- str
Parametr identyfikatora wersji jest nieprzezroczystą wartością DateTime, która w chwili obecnej określa wersję obiektu blob do usunięcia.
Nowość w wersji 12.4.0.
Ten argument słowa kluczowego został wprowadzony w interfejsie API w wersji "2019-12-12".
- lease
- BlobLeaseClient lub str
Wymagane, jeśli obiekt blob ma aktywną dzierżawę. Wartość może być obiektem dzierżawy lub identyfikatorem dzierżawy jako ciągiem.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- if_tags_match_condition
- str
Określ klauzulę SQL where dla tagów obiektów blob do działania tylko w obiekcie blob z pasującą wartością.
np. "\"tagname\"='my tag'"
Nowość w wersji 12.4.0.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Typ zwracany
delete_blobs
Oznacza określone obiekty blob lub migawki do usunięcia.
Obiekty blob są później usuwane podczas odzyskiwania pamięci. Pamiętaj, że aby usunąć obiekty blob, należy usunąć wszystkie ich migawki. Oba można usunąć jednocześnie za pomocą operacji delete_blobs.
Jeśli dla usługi włączono zasady przechowywania usuwania, ta operacja nietrwała usuwa obiekty blob lub migawki i zachowuje obiekty blob lub migawki przez określoną liczbę dni. Po określonej liczbie dni dane obiektów blob są usuwane z usługi podczas odzyskiwania pamięci. Nietrwałe obiekty blob lub migawki są dostępne za pomocą list_blobs określania parametru include=["deleted"] Nietrwałe usunięte obiekty blob lub migawki można przywrócić przy użyciu polecenia <xref:azure.storage.blob.aio.BlobClient.undelete>
Maksymalna liczba obiektów blob, które można usunąć w pojedynczym żądaniu, wynosi 256.
async delete_blobs(*blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> AsyncIterator[AsyncHttpResponse]
Parametry
- blobs
- str lub dict(str, Any) lub BlobProperties
Obiekty blob do usunięcia. Może to być pojedynczy obiekt blob lub można podać wiele wartości, gdzie każda wartość jest nazwą obiektu blob (str) lub obiektu BlobProperties.
Uwaga
Gdy typ obiektu blob jest dykt, oto lista kluczy, reguł wartości.
Nazwa obiektu blob:
klucz: "name", typ wartości: str
migawka, którą chcesz usunąć:
klucz: "snapshot", typ wartości: str
czy usunąć migawki podczas usuwania obiektu blob:
klucz: "delete_snapshots", wartość: "include" lub "only"
jeśli obiekt blob został zmodyfikowany lub nie:
klucz: "if_modified_since", "if_unmodified_since", typ wartości: data/godzina
Etag:
klucz: "etag", typ wartości: str
dopasuj element etag lub nie:
klucz: "match_condition", typ wartości: MatchConditions
warunek dopasowania tagów:
klucz: "if_tags_match_condition", typ wartości: str
Dzierżawy:
klucz: "lease_id", typ wartości: Union[str, LeaseClient]
limit czasu dla podkwestnii:
klucz: "limit czasu", typ wartości: int
- delete_snapshots
- str
Wymagane, jeśli obiekt blob ma skojarzone migawki. Wartości są następujące:
"only": Usuwa tylko migawki obiektów blob.
"include": Usuwa obiekt blob wraz ze wszystkimi migawkami.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- if_tags_match_condition
- str
Określ klauzulę SQL where dla tagów obiektów blob do działania tylko w obiekcie blob z pasującą wartością.
np. "\"tagname\"='my tag'"
Nowość w wersji 12.4.0.
- raise_on_any_failure
- bool
Jest to parametr logiczny, który domyślnie ma wartość True. Po ustawieniu tego wyjątku jest zgłaszany nawet wtedy, gdy wystąpi jeden błąd operacji. Aby uzyskać optymalną wydajność, należy ustawić wartość False
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Iterator asynchroniczny odpowiedzi— jeden dla każdego obiektu blob w kolejności
Typ zwracany
delete_container
Oznacza określony kontener do usunięcia. Kontener i wszystkie zawarte w nim obiekty blob są później usuwane podczas odzyskiwania pamięci.
async delete_container(**kwargs: Any) -> None
Parametry
- lease
- BlobLeaseClient lub str
Jeśli zostanie określony, delete_container powiedzie się tylko wtedy, gdy dzierżawa kontenera jest aktywna i jest zgodna z tym identyfikatorem. Wymagane, jeśli kontener ma aktywną dzierżawę.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Typ zwracany
download_blob
Pobiera obiekt blob do obiektu StorageStreamDownloader. Metoda readall() musi służyć do odczytywania całej zawartości lub readinto() do pobrania obiektu blob do strumienia. Użycie fragmentów() zwraca iterator asynchroniczny, który umożliwia użytkownikowi iterowanie zawartości we fragmentach.
async download_blob(blob: str | BlobProperties, offset: int = None, length: int = None, *, encoding: str, **kwargs) -> StorageStreamDownloader[str]
Parametry
- blob
- str lub BlobProperties
Obiekt blob, z którym można korzystać. Jeśli zostanie określona, ta wartość zastąpi wartość obiektu blob określoną w adresie URL obiektu blob.
- offset
- int
Początek zakresu bajtów do użycia podczas pobierania sekcji obiektu blob. Należy ustawić, jeśli jest podana długość.
- length
- int
Liczba bajtów do odczytu ze strumienia. Jest to opcjonalne, ale powinno być dostarczane w celu uzyskania optymalnej wydajności.
- version_id
- str
Parametr identyfikatora wersji jest nieprzezroczystą wartością DateTime określającą wersję obiektu blob do pobrania.
Nowość w wersji 12.4.0.
Ten argument słowa kluczowego został wprowadzony w interfejsie API w wersji "2019-12-12".
- validate_content
- bool
Jeśli wartość true, oblicza skrót MD5 dla każdego fragmentu obiektu blob. Usługa magazynu sprawdza skrót zawartości, która dotarła do wysłanego skrótu. Jest to przede wszystkim przydatne do wykrywania bitflips w sieci, jeśli używasz protokołu HTTP zamiast https, jak https (ustawienie domyślne), będzie już weryfikowane. Należy pamiętać, że ten skrót MD5 nie jest przechowywany w obiekcie blob. Należy również pamiętać, że w przypadku włączenia algorytmu przekazywania wydajnego w pamięci nie będzie używany, ponieważ przetwarzanie skrótu MD5 wymaga buforowania całych bloków i w ten sposób pokonuje cel algorytmu wydajnego w pamięci.
- lease
- BlobLeaseClient lub str
Wymagane, jeśli obiekt blob ma aktywną dzierżawę. Jeśli zostanie określony, download_blob powiedzie się tylko wtedy, gdy dzierżawa obiektu blob jest aktywna i jest zgodna z tym identyfikatorem. Wartość może być obiektem BlobLeaseClient lub identyfikatorem dzierżawy jako ciągiem.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC będzie mieć wartość UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- if_tags_match_condition
- str
Określ klauzulę SQL where dla tagów obiektów blob do działania tylko w obiekcie blob z pasującą wartością.
np. "\"tagname\"='my tag'"
Nowość w wersji 12.4.0.
Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS. Ponieważ sam klucz szyfrowania jest udostępniany w żądaniu, należy ustanowić bezpieczne połączenie w celu przeniesienia klucza.
- max_concurrency
- int
Liczba połączeń równoległych do pobrania.
- encoding
- str
Kodowanie w celu dekodowania pobranych bajtów. Wartość domyślna to Brak, tj. brak dekodowania.
Asynchroniczne wywołanie zwrotne w celu śledzenia postępu długotrwałego pobierania. Podpis to funkcja (bieżąca: int, total: int), gdzie bieżąca jest liczbą bajtów przetransferowanych do tej pory, a łączny rozmiar pobierania jest całkowity.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj. Ta metoda może wykonywać wiele wywołań usługi, a limit czasu będzie stosowany do każdego wywołania indywidualnie. wiele wywołań do usługi platformy Azure i limit czasu będzie stosowany do każdego wywołania indywidualnie.
Zwraca
Obiekt przesyłania strumieniowego. (StorageStreamDownloader)
Typ zwracany
exists
Zwraca wartość True, jeśli kontener istnieje i zwraca wartość False w przeciwnym razie.
async exists(**kwargs: Any) -> bool
Parametry
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
boolean
Typ zwracany
find_blobs_by_tags
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze, którego tagi pasują do danego wyrażenia wyszukiwania. Generator będzie leniwie podążać za tokenami kontynuacji zwróconymi przez usługę.
find_blobs_by_tags(filter_expression: str, **kwargs: Any | None) -> AsyncItemPaged[FilteredBlob]
Parametry
- filter_expression
- str
Wyrażenie do znajdowania obiektów blob, których tagi są zgodne z określonym warunkiem. np. "yourtagname"='firsttag' i "yourtagname2"='secondtag'"
- results_per_page
- int
Maksymalny wynik na stronę podczas stronicowania.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Iterable (auto-paging) odpowiedź FilteredBlob.
Typ zwracany
from_connection_string
Utwórz element ContainerClient na podstawie parametrów połączenia.
from_connection_string(conn_str: str, container_name: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parametry
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token sygnatury dostępu współdzielonego lub parametry połączenia mają już wartości klucza dostępu współdzielonego. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Poświadczenia podane w tym miejscu będą miały pierwszeństwo przed tymi w parametrach połączenia. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
Zwraca
Klient kontenera.
Typ zwracany
from_container_url
Utwórz element ContainerClient na podstawie adresu URL kontenera.
from_container_url(container_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parametry
- container_url
- str
Pełny adres URL punktu końcowego do kontenera, w tym token SAS, jeśli jest używany. Może to być podstawowy punkt końcowy lub pomocniczy punkt końcowy w zależności od bieżącej location_mode.
- credential
Poświadczenia, za pomocą których należy się uwierzytelniać. Jest to opcjonalne, jeśli adres URL konta ma już token sygnatury dostępu współdzielonego lub parametry połączenia mają już wartości klucza dostępu współdzielonego. Wartość może być ciągiem tokenu sygnatury dostępu współdzielonego, wystąpieniem klasy AzureSasCredential lub AzureNamedKeyCredential z elementu azure.core.credentials, kluczem dostępu współużytkowanego konta lub wystąpieniem klasy TokenCredentials z klasy azure.identity. Jeśli identyfikator URI zasobu zawiera już token sygnatury dostępu współdzielonego, zostanie on zignorowany na rzecz jawnego poświadczenia
- z wyjątkiem przypadków usługi AzureSasCredential, gdzie powodujące konflikty tokeny SYGNATURy dostępu współdzielonego spowodują podniesienie wartościError. Jeśli używasz wystąpienia elementu AzureNamedKeyCredential, wartość "name" powinna być nazwą konta magazynu, a "klucz" powinien być kluczem konta magazynu.
Zwraca
Klient kontenera.
Typ zwracany
get_account_information
Pobiera informacje związane z kontem magazynu.
Informacje można również pobrać, jeśli użytkownik ma sygnaturę dostępu współdzielonego do kontenera lub obiektu blob. Klucze w zwróconym słowniku obejmują "sku_name" i "account_kind".
async get_account_information(**kwargs: Any) -> Dict[str, str]
Zwraca
Dykt informacji o koncie (jednostka SKU i typ konta).
Typ zwracany
get_blob_client
Pobierz klienta do interakcji z określonym obiektem blob.
Obiekt blob nie musi już istnieć.
get_blob_client(blob: BlobProperties | str, snapshot: str = None, *, version_id: str | None = None) -> BlobClient
Parametry
- snapshot
- str
Opcjonalna migawka obiektu blob, na której ma działać. Może to być ciąg identyfikatora migawki lub odpowiedź zwrócona z create_snapshot.
- version_id
- str
Parametr identyfikatora wersji jest nieprzezroczystą wartością DateTime, która w chwili obecnej określa wersję obiektu blob do działania.
Zwraca
Obiekt BlobClient.
Typ zwracany
get_container_access_policy
Pobiera uprawnienia dla określonego kontenera. Uprawnienia wskazują, czy dane kontenera mogą być dostępne publicznie.
async get_container_access_policy(**kwargs: Any) -> Dict[str, Any]
Parametry
- lease
- BlobLeaseClient lub str
Jeśli zostanie określony, get_container_access_policy powiedzie się tylko wtedy, gdy dzierżawa kontenera jest aktywna i pasuje do tego identyfikatora.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Uzyskiwanie dostępu do informacji o zasadach w dyktowaniu.
Typ zwracany
get_container_properties
Zwraca wszystkie metadane zdefiniowane przez użytkownika i właściwości systemu dla określonego kontenera. Zwrócone dane nie zawierają listy obiektów blob kontenera.
async get_container_properties(**kwargs: Any) -> ContainerProperties
Parametry
- lease
- BlobLeaseClient lub str
Jeśli zostanie określony, get_container_properties powiedzie się tylko wtedy, gdy dzierżawa kontenera jest aktywna i jest zgodna z tym identyfikatorem.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Właściwości określonego kontenera w obiekcie kontenera.
Typ zwracany
list_blob_names
Zwraca generator, aby wyświetlić listę nazw obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę.
Należy pamiętać, że podczas korzystania z tego interfejsu API nie będą zwracane żadne dodatkowe właściwości ani metadane. Ponadto ten interfejs API nie ma możliwości uwzględnienia dodatkowych obiektów blob, takich jak migawki, wersje, obiekty blob usunięte nietrwale itp. Aby uzyskać dowolne z tych danych, użyj polecenia list_blobs.
list_blob_names(**kwargs: Any) -> AsyncItemPaged[str]
Parametry
- name_starts_with
- str
Filtruje wyniki, aby zwracać tylko obiekty blob, których nazwy zaczynają się od określonego prefiksu.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Iterowalny (autostronicowanie) odpowiedź nazw obiektów blob jako ciągów.
Typ zwracany
list_blobs
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę.
list_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, **kwargs: Any) -> AsyncItemPaged[BlobProperties]
Parametry
- name_starts_with
- str
Filtruje wyniki, aby zwracać tylko obiekty blob, których nazwy zaczynają się od określonego prefiksu.
Określa co najmniej jeden dodatkowy zestaw danych do uwzględnienia w odpowiedzi. Opcje obejmują: "snapshots", "metadata", "uncommittedblobs", "copy", "deleted", "deletedwithversions", "tags", "versions", "immutabilitypolicy", "legalhold".
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Iterowalny (autostronicowanie) odpowiedź obiektu BlobProperties.
Typ zwracany
set_container_access_policy
Ustawia uprawnienia dla określonego kontenera lub przechowywanych zasad dostępu, które mogą być używane z sygnaturami dostępu współdzielonego. Uprawnienia wskazują, czy obiekty blob w kontenerze mogą być dostępne publicznie.
async set_container_access_policy(signed_identifiers: Dict[str, AccessPolicy], public_access: str | PublicAccess | None = None, **kwargs: Any) -> Dict[str, str | datetime]
Parametry
- signed_identifiers
- dict[str, AccessPolicy]
Słownik zasad dostępu do skojarzenia z kontenerem. Słownik może zawierać maksymalnie 5 elementów. Pusty słownik wyczyści zasady dostępu ustawione w usłudze.
- lease
- BlobLeaseClient lub str
Wymagane, jeśli kontener ma aktywną dzierżawę. Wartość może być obiektem BlobLeaseClient lub identyfikatorem dzierżawy jako ciągiem.
- if_modified_since
- datetime
Wartość daty/godziny. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonej daty/godziny.
- if_unmodified_since
- datetime
Wartość daty/godziny. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Zaktualizowany przez kontener dykt właściwości (Etag i ostatnia modyfikacja).
Typ zwracany
set_container_metadata
Ustawia co najmniej jedną parę nazwa-wartość zdefiniowaną przez użytkownika dla określonego kontenera. Każde wywołanie tej operacji zastępuje wszystkie istniejące metadane dołączone do kontenera. Aby usunąć wszystkie metadane z kontenera, wywołaj tę operację bez dyktowania metadanych.
async set_container_metadata(metadata: Dict[str, str] | None = None, **kwargs) -> Dict[str, str | datetime]
Parametry
Dykt zawierający pary name-value do skojarzenia z kontenerem jako metadane. Przykład: {'category':'test'}
- lease
- BlobLeaseClient lub str
Jeśli zostanie określony, set_container_metadata powiedzie się tylko wtedy, gdy dzierżawa kontenera jest aktywna i jest zgodna z tym identyfikatorem.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Zaktualizowany przez kontener dykt właściwości (Etag i ostatnia modyfikacja).
set_premium_page_blob_tier_blobs
Ustawia warstwy stronicowych obiektów blob w obiektach blob. Ten interfejs API jest obsługiwany tylko w przypadku stronicowych obiektów blob na kontach w warstwie Premium.
Maksymalna liczba obiektów blob, które można zaktualizować w jednym żądaniu, wynosi 256.
async set_premium_page_blob_tier_blobs(premium_page_blob_tier: str | PremiumPageBlobTier, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> AsyncIterator[AsyncHttpResponse]
Parametry
- premium_page_blob_tier
- PremiumPageBlobTier
Wartość warstwy stronicowego obiektu blob ustawiona na wszystkie obiekty blob. Warstwa jest skorelowana z rozmiarem obiektu blob i liczbą dozwolonych operacji we/wy na sekundę. Dotyczy to tylko stronicowych obiektów blob na kontach magazynu w warstwie Premium.
Uwaga
Jeśli chcesz ustawić inną warstwę dla różnych obiektów blob, ustaw ten parametr pozycyjny na Wartość Brak.
Następnie zostanie pobrana warstwa obiektu blob dla każdego obiektu BlobProperties.
- blobs
- str lub dict(str, Any) lub BlobProperties
Obiekty blob, z którymi należy korzystać. Może to być pojedynczy obiekt blob lub można podać wiele wartości, w których każda wartość jest nazwą obiektu blob (str) lub właściwościami BlobProperties.
Uwaga
Gdy typ obiektu blob jest dykt, oto lista kluczy, reguł wartości.
Nazwa obiektu blob:
key: 'name', value type: str
Warstwa obiektów blob w warstwie Premium:
key: 'blob_tier', typ wartości: PremiumPageBlobTier
Dzierżawy:
key: 'lease_id', typ wartości: Union[str, LeaseClient]
limit czasu dla żądania podrzędnego:
key: "timeout", typ wartości: int
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
- raise_on_any_failure
- bool
Jest to parametr logiczny, który domyślnie ma wartość True. Po ustawieniu tego wyjątku jest zgłaszany nawet w przypadku wystąpienia pojedynczego błędu operacji. Aby uzyskać optymalną wydajność, należy ustawić wartość False.
Zwraca
Iterator asynchroniczny odpowiedzi, po jednym dla każdego obiektu blob w kolejności
Typ zwracany
set_standard_blob_tier_blobs
Ta operacja ustawia warstwę blokowych obiektów blob.
Warstwa blokowego obiektu blob określa typ magazynu Gorąca/Chłodna/Archiwum. Ta operacja nie aktualizuje elementu ETag obiektu blob.
Maksymalna liczba obiektów blob, które można zaktualizować w jednym żądaniu, wynosi 256.
async set_standard_blob_tier_blobs(standard_blob_tier: str | StandardBlobTier, *blobs: str | Dict[str, Any] | BlobProperties, **kwargs: Any) -> AsyncIterator[AsyncHttpResponse]
Parametry
- standard_blob_tier
- str lub StandardBlobTier
Wskazuje warstwę, która ma być ustawiona na wszystkich obiektach blob. Opcje obejmują "Gorąca", "Chłodna", "Archiwum". Warstwa Gorąca jest zoptymalizowana pod kątem przechowywania często używanych danych. Warstwa magazynowania Chłodna jest zoptymalizowana pod kątem przechowywania danych, które są rzadko używane i przechowywane przez co najmniej miesiąc. Warstwa Archiwum jest zoptymalizowana pod kątem przechowywania rzadko używanych danych i przechowywanych przez co najmniej sześć miesięcy z elastycznymi wymaganiami dotyczącymi opóźnień.
Uwaga
Jeśli chcesz ustawić inną warstwę dla różnych obiektów blob, ustaw ten parametr pozycyjny na Wartość Brak.
Następnie zostanie pobrana warstwa obiektu blob dla każdego obiektu BlobProperties.
- blobs
- str lub dict(str, Any) lub BlobProperties
Obiekty blob, z którymi należy korzystać. Może to być pojedynczy obiekt blob lub można podać wiele wartości, w których każda wartość jest nazwą obiektu blob (str) lub właściwościami BlobProperties.
Uwaga
Gdy typ obiektu blob jest dykt, oto lista kluczy, reguł wartości.
Nazwa obiektu blob:
key: 'name', value type: str
Standardowa warstwa obiektu blob:
key: 'blob_tier', typ wartości: StandardBlobTier
priorytet ponownego wypełniania:
key: "rehydrate_priority", typ wartości: RehydratePriority
Dzierżawy:
key: 'lease_id', typ wartości: Union[str, LeaseClient]
warunek dopasowania tagów:
key: 'if_tags_match_condition', typ wartości: str
limit czasu dla żądania podrzędnego:
key: "timeout", typ wartości: int
- rehydrate_priority
- RehydratePriority
Wskazuje priorytet ponownego wypełniania zarchiwizowanego obiektu blob
- if_tags_match_condition
- str
Określ klauzulę SQL where dla tagów obiektów blob, która będzie działać tylko na obiektach blob z pasującą wartością.
np. "\"tagname\"='my tag'"
Nowość w wersji 12.4.0.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
- raise_on_any_failure
- bool
Jest to parametr logiczny, który domyślnie ma wartość True. Po ustawieniu tego wyjątku jest zgłaszany nawet w przypadku wystąpienia pojedynczego błędu operacji. Aby uzyskać optymalną wydajność, należy ustawić wartość False.
Zwraca
Iterator asynchroniczny odpowiedzi, po jednym dla każdego obiektu blob w kolejności
Typ zwracany
upload_blob
Tworzy nowy obiekt blob ze źródła danych z automatycznym fragmentowaniem.
async upload_blob(name: str | BlobProperties, data: bytes | str | Iterable | AsyncIterable | IO, blob_type: str | BlobType = BlobType.BLOCKBLOB, length: int | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> BlobClient
Parametry
- name
- str lub BlobProperties
Obiekt blob, z którym należy korzystać. Jeśli ta wartość zostanie określona, zastąpi wartość obiektu blob określoną w adresie URL obiektu blob.
- data
Dane obiektu blob do przekazania.
- blob_type
- BlobType
Typ obiektu blob. Może to być blockBlob, PageBlob lub AppendBlob. Wartość domyślna to BlockBlob.
- length
- int
Liczba bajtów do odczytania ze strumienia. Jest to opcjonalne, ale powinno zostać dostarczone w celu uzyskania optymalnej wydajności.
- overwrite
- bool
Określa, czy obiekt blob, który ma zostać przekazany, powinien zastąpić bieżące dane. Jeśli wartość True, upload_blob zastąpi istniejące dane. W przypadku ustawienia wartości False operacja zakończy się niepowodzeniem z błędem ResourceExistsError. Wyjątek od powyższego dotyczy typów uzupełnialnych obiektów blob: jeśli ustawiono wartość False i dane już istnieją, błąd nie zostanie zgłoszony i dane zostaną dołączone do istniejącego obiektu blob. Jeśli ustawisz wartość overwrite=True, istniejący obiekt blob dołączania zostanie usunięty i zostanie utworzony nowy obiekt blob. Wartość domyślna to False.
- content_settings
- ContentSettings
Obiekt ContentSettings używany do ustawiania właściwości obiektu blob. Służy do ustawiania typu zawartości, kodowania, języka, dyspozycji, md5 i kontrolki pamięci podręcznej.
- validate_content
- bool
Jeśli wartość true, oblicza skrót MD5 dla każdego fragmentu obiektu blob. Usługa magazynu sprawdza skrót zawartości, która dotarła do wysłanego skrótu. Jest to przede wszystkim przydatne w przypadku wykrywania bitflipów w sieci, jeśli używasz protokołu HTTP zamiast https, ponieważ jest to protokół https (wartość domyślna), będzie już weryfikowane. Należy pamiętać, że ten skrót MD5 nie jest przechowywany w obiekcie blob. Należy również pamiętać, że w przypadku włączenia algorytmu przekazywania wydajnego w pamięci nie będzie używany, ponieważ obliczanie skrótu MD5 wymaga buforowania całych bloków i w ten sposób można pokonać cel algorytmu wydajnego pod względem pamięci.
- lease
- BlobLeaseClient lub str
Wymagane, jeśli kontener ma aktywną dzierżawę. Wartość może być obiektem BlobLeaseClient lub identyfikatorem dzierżawy jako ciągiem.
- if_modified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób został zmodyfikowany od określonego czasu.
- if_unmodified_since
- datetime
Wartość typu Data/godzina. Platforma Azure oczekuje, że wartość daty przekazana w formacie UTC. Jeśli strefa czasowa jest uwzględniona, wszystkie daty i godziny inne niż UTC zostaną przekonwertowane na czas UTC. Jeśli data jest przekazywana bez informacji o strefie czasowej, przyjmuje się, że jest to utc. Określ ten nagłówek, aby wykonać operację tylko wtedy, gdy zasób nie został zmodyfikowany od określonej daty/godziny.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- if_tags_match_condition
- str
Określ klauzulę SQL where dla tagów obiektów blob, która będzie działać tylko na obiektach blob z pasującą wartością.
np. "\"tagname\"='my tag'"
Nowość w wersji 12.4.0.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj. Ta metoda może wykonywać wiele wywołań usługi, a limit czasu będzie stosowany do każdego wywołania osobno. wiele wywołań usługi platformy Azure, a limit czasu będzie stosowany do każdego wywołania indywidualnie.
- premium_page_blob_tier
- PremiumPageBlobTier
Wartość warstwy stronicowego obiektu blob do ustawienia obiektu blob na . Warstwa jest skorelowana z rozmiarem obiektu blob i liczbą dozwolonych operacji we/wy na sekundę. Dotyczy to tylko stronicowych obiektów blob na kontach magazynu w warstwie Premium.
- standard_blob_tier
- StandardBlobTier
Wartość warstwy standardowego obiektu blob do ustawienia obiektu blob na . W przypadku tej wersji biblioteki ma to zastosowanie tylko do blokowych obiektów blob na kontach magazynu w warstwie Standardowa.
- maxsize_condition
- int
Opcjonalny nagłówek warunkowy. Maksymalna długość w bajtach dozwolona dla uzupełnialnych obiektów blob. Jeśli operacja bloku dołączania spowoduje przekroczenie tego limitu przez obiekt blob lub jeśli rozmiar obiektu blob jest już większy niż wartość określona w tym nagłówku, żądanie zakończy się niepowodzeniem z powodu błędu MaxBlobSizeConditionNotMet (kod stanu HTTP 412 — Niepowodzenie warunku wstępnego).
- max_concurrency
- int
Maksymalna liczba połączeń równoległych do użycia, gdy rozmiar obiektu blob przekracza 64 MB.
Szyfruje dane po stronie usługi przy użyciu danego klucza. Korzystanie z kluczy dostarczonych przez klienta musi odbywać się za pośrednictwem protokołu HTTPS. Ponieważ sam klucz szyfrowania jest udostępniany w żądaniu, należy ustanowić bezpieczne połączenie w celu przeniesienia klucza.
- encryption_scope
- str
Wstępnie zdefiniowany zakres szyfrowania używany do szyfrowania danych w usłudze. Zakres szyfrowania można utworzyć przy użyciu interfejsu API zarządzania i przywoływał go tutaj według nazwy. Jeśli domyślny zakres szyfrowania został zdefiniowany w kontenerze, ta wartość zastąpi go, jeśli zakres na poziomie kontenera jest skonfigurowany do zezwalania na przesłonięcia. W przeciwnym razie zostanie zgłoszony błąd.
Nowość w wersji 12.2.0.
- encoding
- str
Wartość domyślna to UTF-8.
Asynchroniczne wywołanie zwrotne do śledzenia postępu długotrwałego przekazywania. Podpis jest funkcją(current: int, total: Optional[int]), gdzie bieżąca jest liczbą bajtów przesłanych do tej pory, a łączny rozmiar obiektu blob lub None, jeśli rozmiar jest nieznany.
Zwraca
Obiekt BlobClient umożliwiający interakcję z nowo przekazanym obiektem blob.
Typ zwracany
walk_blobs
Zwraca generator, aby wyświetlić listę obiektów blob w określonym kontenerze. Generator będzie lazily podążać za tokenami kontynuacji zwróconymi przez usługę. Ta operacja spowoduje wyświetlenie listy obiektów blob zgodnie z hierarchią rozdzielaną określonym znakiem ogranicznika.
walk_blobs(name_starts_with: str | None = None, include: str | List[str] | None = None, delimiter: str = '/', **kwargs: Any | None) -> AsyncItemPaged[BlobProperties]
Parametry
- name_starts_with
- str
Filtruje wyniki, aby zwracać tylko obiekty blob, których nazwy zaczynają się od określonego prefiksu.
Określa co najmniej jeden dodatkowy zestaw danych do uwzględnienia w odpowiedzi. Opcje obejmują: "snapshots", "metadata", "uncommittedblobs", "copy", "deleted", "deletedwithversions", "tags", "versions", "immutabilitypolicy", "legalhold".
- delimiter
- str
Gdy żądanie zawiera ten parametr, operacja zwraca element BlobPrefix w treści odpowiedzi, który działa jako symbol zastępczy dla wszystkich obiektów blob, których nazwy zaczynają się od tego samego podciągu do wyglądu znaku ogranicznika. Ogranicznik może być pojedynczym znakiem lub ciągiem.
- timeout
- int
Ustawia limit czasu po stronie serwera dla operacji w sekundach. Aby uzyskać więcej informacji, zobacz https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Ta wartość nie jest śledzona ani weryfikowana na kliencie. Aby skonfigurować limity czasu sieci po stronie klienta, zobacz tutaj.
Zwraca
Iterowalny (autostronicowanie) odpowiedź obiektu BlobProperties.
Typ zwracany
Atrybuty
api_version
Wersja interfejsu API usługi Storage używana na potrzeby żądań.
location_mode
Tryb lokalizacji, z którego obecnie korzysta klient.
Domyślnie będzie to "podstawowe". Opcje obejmują "podstawowe" i "pomocnicze".
primary_endpoint
Pełny podstawowy adres URL punktu końcowego.
primary_hostname
Nazwa hosta podstawowego punktu końcowego.
secondary_endpoint
Pełny adres URL pomocniczego punktu końcowego, jeśli został skonfigurowany.
Jeśli parametr ValueError nie będzie dostępny, zostanie zgłoszony błąd. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname podczas tworzenia wystąpienia.
Wyjątki
secondary_hostname
Nazwa hosta pomocniczego punktu końcowego.
Jeśli ta opcja nie będzie dostępna, będzie to brak. Aby jawnie określić pomocniczą nazwę hosta, użyj opcjonalnego argumentu słowa kluczowego secondary_hostname podczas tworzenia wystąpienia.
url
Pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany.
Może to być podstawowy punkt końcowy lub pomocniczy punkt końcowy w zależności od bieżącego location_mode. :returns: pełny adres URL punktu końcowego do tej jednostki, w tym token SAS, jeśli jest używany. :rtype: str
Azure SDK for Python