BlobServiceClient Kelas
Klien untuk berinteraksi dengan Blob Service di tingkat akun.
Klien ini menyediakan operasi untuk mengambil dan mengonfigurasi properti akun serta mencantumkan, membuat dan menghapus kontainer dalam akun. Untuk operasi yang berkaitan dengan kontainer atau blob tertentu, klien untuk entitas tersebut juga dapat diambil menggunakan fungsi get_client .
Untuk konfigurasi opsional lainnya, silakan klik di sini.
- Warisan
-
azure.storage.blob._shared.base_client.StorageAccountHostsMixinBlobServiceClientazure.storage.blob._encryption.StorageEncryptionMixinBlobServiceClient
Konstruktor
BlobServiceClient(account_url: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any)
Parameter
- account_url
- str
URL ke akun penyimpanan blob. Entitas lain yang disertakan dalam jalur URL (misalnya kontainer atau blob) akan dibuang. URL ini dapat diautentikasi secara opsional dengan token SAS.
- credential
Kredensial yang digunakan untuk mengautentikasi. Ini opsional jika URL akun sudah memiliki token SAS. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Jika URI sumber daya sudah berisi token SAS, ini akan diabaikan demi kredensial eksplisit
- kecuali dalam kasus AzureSasCredential, di mana token SAS yang bertentangan akan memunculkan ValueError. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.
- api_version
- str
Versi Storage API yang akan digunakan untuk permintaan. Nilai default adalah versi layanan terbaru yang kompatibel dengan SDK saat ini. Pengaturan ke versi yang lebih lama dapat mengakibatkan berkurangnya kompatibilitas fitur.
Baru dalam versi 12.2.0.
- secondary_hostname
- str
Nama host titik akhir sekunder.
- max_block_size
- int
Ukuran gugus maksimum untuk mengunggah blob blok dalam gugus.
Default ke 4*1024*1024
, atau 4MB.
- max_single_put_size
- int
Jika ukuran blob kurang dari atau sama dengan max_single_put_size, maka blob hanya akan diunggah dengan satu permintaan http PUT. Jika ukuran blob lebih besar dari max_single_put_size, blob akan diunggah dalam gugus. Default ke 64*1024*1024
, atau 64MB.
- min_large_block_upload_threshold
- int
Ukuran gugus minimum yang diperlukan untuk menggunakan algoritma hemat memori saat mengunggah blob blok. Default ke 4*1024*1024
+1.
- use_byte_buffer
- bool
Gunakan buffer byte untuk unggahan blob blok. Default ke False.
- max_page_size
- int
Ukuran gugus maksimum untuk mengunggah blob halaman. Default ke 4*1024*1024
, atau 4MB.
- max_single_get_size
- int
Ukuran maksimum untuk blob yang akan diunduh dalam satu panggilan, bagian yang terlampaui akan diunduh dalam gugus (bisa paralel). Default ke 32*1024*1024
, atau 32MB.
- max_chunk_get_size
- int
Ukuran gugus maksimum yang digunakan untuk mengunduh blob. Default ke 4*1024*1024
, atau 4MB.
Metode
close |
Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks. |
create_container |
Membuat kontainer baru di bawah akun yang ditentukan. Jika kontainer dengan nama yang sama sudah ada, ResourceExistsError akan dinaikkan. Metode ini mengembalikan klien untuk berinteraksi dengan kontainer yang baru dibuat. |
delete_container |
Menandai kontainer yang ditentukan untuk penghapusan. Kontainer dan blob apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah. Jika kontainer tidak ditemukan, ResourceNotFoundError akan dinaikkan. |
find_blobs_by_tags |
Operasi Filter Blobs memungkinkan penelepon untuk mencantumkan blob di semua kontainer yang tagnya cocok dengan ekspresi pencarian tertentu. Blob filter mencari di semua kontainer dalam akun penyimpanan tetapi dapat dilingkupkan dalam ekspresi ke satu kontainer. |
from_connection_string |
Buat BlobServiceClient dari String Koneksi. |
get_account_information |
Mendapatkan informasi yang terkait dengan akun penyimpanan. Informasi juga dapat diambil jika pengguna memiliki SAS ke kontainer atau blob. Kunci dalam kamus yang dikembalikan termasuk 'sku_name' dan 'account_kind'. |
get_blob_client |
Dapatkan klien untuk berinteraksi dengan blob yang ditentukan. Blob belum ada. |
get_container_client |
Mendapatkan klien untuk berinteraksi dengan kontainer yang ditentukan. Kontainer belum ada. |
get_service_properties |
Mendapatkan properti blob service akun penyimpanan, termasuk Azure Storage Analytics. |
get_service_stats |
Mengambil statistik yang terkait dengan replikasi untuk Blob service. Ini hanya tersedia ketika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan. Dengan replikasi geo-redundan, Azure Storage mempertahankan data Anda tetap tahan lama di dua lokasi. Di kedua lokasi, Azure Storage terus mempertahankan beberapa replika data Anda yang sehat. Lokasi tempat Anda membaca, membuat, memperbarui, atau menghapus data adalah lokasi akun penyimpanan utama. Lokasi utama ada di wilayah yang Anda pilih pada saat Anda membuat akun melalui portal klasik Azure Management Azure, misalnya, US Tengah Utara. Lokasi tempat data Anda direplikasi adalah lokasi sekunder. Lokasi sekunder secara otomatis ditentukan berdasarkan lokasi primer; berada di pusat data kedua yang berada di wilayah yang sama dengan lokasi utama. Akses baca-saja tersedia dari lokasi sekunder, jika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan Anda. |
get_user_delegation_key |
Dapatkan kunci delegasi pengguna untuk tujuan menandatangani token SAS. Kredensial token harus ada pada objek layanan agar permintaan ini berhasil. |
list_containers |
Mengembalikan generator untuk mencantumkan kontainer di bawah akun yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan dan berhenti ketika semua kontainer telah dikembalikan. |
set_service_properties |
Mengatur properti blob service akun penyimpanan, termasuk Azure Storage Analytics. Jika elemen (misalnya analytics_logging) dibiarkan sebagai Tidak Ada, pengaturan yang ada pada layanan untuk fungsi tersebut dipertahankan. |
undelete_container |
Memulihkan kontainer yang dihapus sementara. Operasi hanya akan berhasil jika digunakan dalam jumlah hari yang ditentukan yang ditetapkan dalam kebijakan penyimpanan penghapusan. Baru dalam versi 12.4.0: Operasi ini diperkenalkan dalam versi API '2019-12-12'. |
close
Metode ini untuk menutup soket yang dibuka oleh klien. Ini tidak perlu digunakan saat menggunakan dengan manajer konteks.
close()
create_container
Membuat kontainer baru di bawah akun yang ditentukan.
Jika kontainer dengan nama yang sama sudah ada, ResourceExistsError akan dinaikkan. Metode ini mengembalikan klien untuk berinteraksi dengan kontainer yang baru dibuat.
create_container(name: str, metadata: Dict[str, str] | None = None, public_access: PublicAccess | str | None = None, **kwargs) -> ContainerClient
Parameter
Dict dengan pasangan nama-nilai untuk dikaitkan dengan kontainer sebagai metadata. Contoh: {'Category':'test'}
- container_encryption_scope
- dict atau ContainerEncryptionScope
Menentukan cakupan enkripsi default yang akan diatur pada kontainer dan digunakan untuk semua penulisan di masa mendatang.
Baru dalam versi 12.2.0.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Tipe hasil
delete_container
Menandai kontainer yang ditentukan untuk penghapusan.
Kontainer dan blob apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah. Jika kontainer tidak ditemukan, ResourceNotFoundError akan dinaikkan.
delete_container(container: ContainerProperties | str, lease: BlobLeaseClient | str | None = None, **kwargs) -> None
Parameter
- container
- str atau ContainerProperties
Kontainer yang akan dihapus. Ini bisa berupa nama kontainer, atau instans ContainerProperties.
- lease
Jika ditentukan, delete_container hanya berhasil jika sewa kontainer aktif dan cocok dengan ID ini. Diperlukan jika kontainer memiliki sewa aktif.
- if_modified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya telah dimodifikasi sejak waktu yang ditentukan.
- if_unmodified_since
- datetime
Nilai TanggalWaktu. Azure mengharapkan nilai tanggal yang diteruskan menjadi UTC. Jika zona waktu disertakan, tanggalwaktu non-UTC apa pun akan dikonversi ke UTC. Jika tanggal diteruskan tanpa info zona waktu, diasumsikan sebagai UTC. Tentukan header ini untuk melakukan operasi hanya jika sumber daya belum dimodifikasi sejak tanggal/waktu yang ditentukan.
- etag
- str
Nilai ETag, atau karakter kartubebas (*). Digunakan untuk memeriksa apakah sumber daya telah berubah, dan bertindak sesuai dengan kondisi yang ditentukan oleh parameter match_condition .
- match_condition
- MatchConditions
Kondisi kecocokan untuk digunakan pada etag.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Tipe hasil
find_blobs_by_tags
Operasi Filter Blobs memungkinkan penelepon untuk mencantumkan blob di semua kontainer yang tagnya cocok dengan ekspresi pencarian tertentu. Blob filter mencari di semua kontainer dalam akun penyimpanan tetapi dapat dilingkupkan dalam ekspresi ke satu kontainer.
find_blobs_by_tags(filter_expression: str, **kwargs: Any) -> ItemPaged[FilteredBlob]
Parameter
- filter_expression
- str
Ekspresi untuk menemukan blob yang tagnya cocok dengan kondisi yang ditentukan. misalnya. ""yourtagname"='firsttag' and "yourtagname2"='secondtag'" Untuk menentukan kontainer, misalnya. "@container='containerName' dan "Name"='C'"
- results_per_page
- int
Hasil maksimum per halaman saat paginating.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam hitung detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Respons BlobProperties yang dapat diulang (auto-paging).
Tipe hasil
from_connection_string
Buat BlobServiceClient dari String Koneksi.
from_connection_string(conn_str: str, credential: str | Dict[str, str] | AzureNamedKeyCredential | AzureSasCredential | TokenCredential | None = None, **kwargs: Any) -> Self
Parameter
- credential
Kredensial yang digunakan untuk mengautentikasi. Ini bersifat opsional jika URL akun sudah memiliki token SAS, atau string koneksi sudah memiliki nilai kunci akses bersama. Nilainya dapat berupa string token SAS, instans AzureSasCredential atau AzureNamedKeyCredential dari azure.core.credentials, kunci akses bersama akun, atau instans kelas TokenCredentials dari azure.identity. Kredensial yang disediakan di sini akan lebih diutamakan daripada yang ada dalam string koneksi. Jika menggunakan instans AzureNamedKeyCredential, "nama" harus menjadi nama akun penyimpanan, dan "kunci" harus menjadi kunci akun penyimpanan.
Mengembalikan
Klien Blob service.
Tipe hasil
get_account_information
Mendapatkan informasi yang terkait dengan akun penyimpanan.
Informasi juga dapat diambil jika pengguna memiliki SAS ke kontainer atau blob. Kunci dalam kamus yang dikembalikan termasuk 'sku_name' dan 'account_kind'.
get_account_information(**kwargs: Any) -> Dict[str, str]
Mengembalikan
Dict informasi akun (SKU dan jenis akun).
Tipe hasil
get_blob_client
Dapatkan klien untuk berinteraksi dengan blob yang ditentukan.
Blob belum ada.
get_blob_client(container: ContainerProperties | str, blob: BlobProperties | str, snapshot: Dict[str, Any] | str | None = None, *, version_id: str | None = None) -> BlobClient
Parameter
- container
- str atau ContainerProperties
Kontainer tempat blob berada. Ini bisa berupa nama kontainer, atau instans ContainerProperties.
- blob
- str atau BlobProperties
Blob yang digunakan untuk berinteraksi. Ini bisa menjadi nama blob, atau instans BlobProperties.
Rekam jepret blob opsional untuk dioperasikan. Ini bisa berupa ID rekam jepret, atau output kamus yang dikembalikan oleh create_snapshot.
- version_id
- str
Parameter id versi adalah nilai DateTime buram yang, saat ada, menentukan versi blob yang akan dioperasikan.
Mengembalikan
Sebuah BlobClient.
Tipe hasil
get_container_client
Mendapatkan klien untuk berinteraksi dengan kontainer yang ditentukan.
Kontainer belum ada.
get_container_client(container: ContainerProperties | str) -> ContainerClient
Parameter
- container
- str atau ContainerProperties
Kontainer. Ini bisa berupa nama kontainer, atau instans ContainerProperties.
Mengembalikan
A ContainerClient.
Tipe hasil
get_service_properties
Mendapatkan properti blob service akun penyimpanan, termasuk Azure Storage Analytics.
get_service_properties(**kwargs: Any) -> Dict[str, Any]
Parameter
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Objek yang berisi properti layanan blob seperti pengelogan analitik, metrik jam/menit, aturan cors, dll.
Tipe hasil
get_service_stats
Mengambil statistik yang terkait dengan replikasi untuk Blob service.
Ini hanya tersedia ketika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan.
Dengan replikasi geo-redundan, Azure Storage mempertahankan data Anda tetap tahan lama di dua lokasi. Di kedua lokasi, Azure Storage terus mempertahankan beberapa replika data Anda yang sehat. Lokasi tempat Anda membaca, membuat, memperbarui, atau menghapus data adalah lokasi akun penyimpanan utama. Lokasi utama ada di wilayah yang Anda pilih pada saat Anda membuat akun melalui portal klasik Azure Management Azure, misalnya, US Tengah Utara. Lokasi tempat data Anda direplikasi adalah lokasi sekunder. Lokasi sekunder secara otomatis ditentukan berdasarkan lokasi primer; berada di pusat data kedua yang berada di wilayah yang sama dengan lokasi utama. Akses baca-saja tersedia dari lokasi sekunder, jika replikasi geo-redundan akses baca diaktifkan untuk akun penyimpanan Anda.
get_service_stats(**kwargs: Any) -> Dict[str, Any]
Parameter
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Statistik layanan blob.
Tipe hasil
get_user_delegation_key
Dapatkan kunci delegasi pengguna untuk tujuan menandatangani token SAS. Kredensial token harus ada pada objek layanan agar permintaan ini berhasil.
get_user_delegation_key(key_start_time: datetime, key_expiry_time: datetime, **kwargs: Any) -> UserDelegationKey
Parameter
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Kunci delegasi pengguna.
Tipe hasil
list_containers
Mengembalikan generator untuk mencantumkan kontainer di bawah akun yang ditentukan.
Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan dan berhenti ketika semua kontainer telah dikembalikan.
list_containers(name_starts_with: str | None = None, include_metadata: bool | None = False, **kwargs) -> ItemPaged[ContainerProperties]
Parameter
- name_starts_with
- str
Memfilter hasil untuk mengembalikan hanya kontainer yang namanya dimulai dengan awalan yang ditentukan.
- include_metadata
- bool
Menentukan bahwa metadata kontainer yang akan dikembalikan dalam respons. Nilai defaultnya adalah False.
- include_deleted
- bool
Menentukan bahwa kontainer yang dihapus akan dikembalikan dalam respons. Ini untuk akun yang diaktifkan pemulihan kontainer. Nilai defaultnya adalah False. .. versionadded:: 12.4.0
- include_system
- bool
Bendera yang menentukan bahwa kontainer sistem harus disertakan. .. versionadded:: 12.10.0
- results_per_page
- int
Jumlah maksimum nama kontainer untuk diambil per panggilan API. Jika permintaan tidak menentukan server akan mengembalikan hingga 5.000 item.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
Iterable (halaman otomatis) Dari ContainerProperties.
Tipe hasil
set_service_properties
Mengatur properti blob service akun penyimpanan, termasuk Azure Storage Analytics.
Jika elemen (misalnya analytics_logging) dibiarkan sebagai Tidak Ada, pengaturan yang ada pada layanan untuk fungsi tersebut dipertahankan.
set_service_properties(analytics_logging: BlobAnalyticsLogging | None = None, hour_metrics: Metrics | None = None, minute_metrics: Metrics | None = None, cors: List[CorsRule] | None = None, target_version: str | None = None, delete_retention_policy: RetentionPolicy | None = None, static_website: StaticWebsite | None = None, **kwargs) -> None
Parameter
- analytics_logging
- BlobAnalyticsLogging
Mengelompokkan pengaturan Pengelogan Azure Analytics.
- hour_metrics
- Metrics
Pengaturan metrik jam menyediakan ringkasan statistik permintaan yang dikelompokkan menurut API dalam agregat per jam untuk blob.
- minute_metrics
- Metrics
Pengaturan metrik menit menyediakan statistik permintaan untuk setiap menit untuk blob.
Anda dapat menyertakan hingga lima elemen CorsRule dalam daftar. Jika daftar kosong ditentukan, semua aturan CORS akan dihapus, dan CORS akan dinonaktifkan untuk layanan.
- target_version
- str
Menunjukkan versi default yang akan digunakan untuk permintaan jika versi permintaan masuk tidak ditentukan.
- delete_retention_policy
- RetentionPolicy
Kebijakan penyimpanan penghapusan menentukan apakah akan mempertahankan blob yang dihapus. Ini juga menentukan jumlah hari dan versi blob yang akan disimpan.
- static_website
- StaticWebsite
Menentukan apakah fitur situs web statis diaktifkan, dan jika ya, menunjukkan dokumen indeks dan dokumen kesalahan 404 untuk digunakan.
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Tipe hasil
undelete_container
Memulihkan kontainer yang dihapus sementara.
Operasi hanya akan berhasil jika digunakan dalam jumlah hari yang ditentukan yang ditetapkan dalam kebijakan penyimpanan penghapusan.
Baru dalam versi 12.4.0: Operasi ini diperkenalkan dalam versi API '2019-12-12'.
undelete_container(deleted_container_name: str, deleted_container_version: str, **kwargs: Any) -> ContainerClient
Parameter
- timeout
- int
Mengatur batas waktu sisi server untuk operasi dalam detik. Untuk detail selengkapnya, lihat https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations. Nilai ini tidak dilacak atau divalidasi pada klien. Untuk mengonfigurasi batas waktu jaringan sisi klien, lihat di sini.
Mengembalikan
ContainerClient yang tidak dihapus.
Tipe hasil
Atribut
api_version
Versi Api Penyimpanan yang digunakan untuk permintaan.
location_mode
Mode lokasi yang saat ini digunakan klien.
Secara default ini akan menjadi "primer". Opsi termasuk "primer" dan "sekunder".
primary_endpoint
URL titik akhir utama lengkap.
primary_hostname
Nama host titik akhir utama.
secondary_endpoint
URL titik akhir sekunder penuh jika dikonfigurasi.
Jika tidak tersedia, ValueError akan dinaikkan. Untuk menentukan nama host sekunder secara eksplisit, gunakan argumen kata kunci secondary_hostname opsional pada instansiasi.
Pengecualian
secondary_hostname
Nama host titik akhir sekunder.
Jika tidak tersedia, ini tidak akan ada. Untuk menentukan nama host sekunder secara eksplisit, gunakan argumen kata kunci secondary_hostname opsional pada instansiasi.
url
URL titik akhir lengkap untuk entitas ini, termasuk token SAS jika digunakan.
Ini bisa berupa titik akhir utama, atau titik akhir sekunder tergantung pada saat ini location_mode. :returns: URL titik akhir lengkap ke entitas ini, termasuk token SAS jika digunakan. :rtype: str
Azure SDK for Python
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk