ContainerClient Kelas

Klien untuk berinteraksi dengan kontainer tertentu, meskipun kontainer tersebut mungkin belum ada.

Untuk operasi yang berkaitan dengan blob tertentu dalam kontainer ini, klien blob dapat diambil menggunakan fungsi .get_blob_client

Untuk konfigurasi opsional lainnya, silakan klik di sini.

Warisan
azure.storage.blob._shared.base_client.StorageAccountHostsMixin
ContainerClient
azure.storage.blob._encryption.StorageEncryptionMixin
ContainerClient

Konstruktor

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

Parameter

account_url
str
Diperlukan

URI ke akun penyimpanan. Untuk membuat klien yang diberikan URI penuh ke kontainer, gunakan from_container_url classmethod.

container_name
str
Diperlukan

Nama kontainer untuk blob.

credential
nilai default: None

Kredensial yang digunakan untuk mengautentikasi. Ini bersifat 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 menaikkan 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 digunakan untuk permintaan. Nilai default adalah versi layanan terbaru yang kompatibel dengan SDK saat ini. Pengaturan ke versi yang lebih lama dapat mengakibatkan kompatibilitas fitur yang berkurang.

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

acquire_lease

Meminta sewa baru. Jika kontainer tidak memiliki sewa aktif, Blob service membuat sewa pada kontainer dan mengembalikan ID sewa baru.

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, operasi gagal.

delete_blob

Menandai blob atau rekam jepret yang ditentukan untuk dihapus.

Blob kemudian dihapus selama pengumpulan sampah. Perhatikan bahwa untuk menghapus blob, Anda harus menghapus semua rekam jepretnya. Anda dapat menghapus keduanya secara bersamaan dengan operasi delete_blob.

Jika kebijakan penyimpanan penghapusan diaktifkan untuk layanan, maka operasi ini akan menghapus blob atau rekam jepret dan mempertahankan blob atau rekam jepret untuk jumlah hari yang ditentukan. Setelah jumlah hari yang ditentukan, data blob dihapus dari layanan selama pengumpulan sampah. Blob atau rekam jepret yang dihapus sementara dapat diakses melalui list_blobs opsi include=["deleted"] . Blob atau rekam jepret yang dihapus sementara dapat dipulihkan menggunakan <xref:azure.storage.blob.BlobClient.undelete>

delete_blobs

Menandai blob atau rekam jepret yang ditentukan untuk dihapus.

Blob kemudian dihapus selama pengumpulan sampah. Perhatikan bahwa untuk menghapus blob, Anda harus menghapus semua rekam jepretnya. Anda dapat menghapus keduanya secara bersamaan dengan operasi delete_blobs.

Jika kebijakan penyimpanan penghapusan diaktifkan untuk layanan, maka operasi ini akan menghapus blob atau rekam jepret dan mempertahankan blob atau rekam jepret selama jumlah hari yang ditentukan. Setelah jumlah hari yang ditentukan, data blob dihapus dari layanan selama pengumpulan sampah. Blob atau rekam jepret yang dihapus sementara dapat diakses melalui list_blobs menentukan include=["deleted"] Blob atau rekam jepret yang dihapus sementara dapat dipulihkan menggunakan <xref:azure.storage.blob.BlobClient.undelete>

Jumlah maksimum blob yang dapat dihapus dalam satu permintaan adalah 256.

delete_container

Menandai kontainer yang ditentukan untuk penghapusan. Kontainer dan blob apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah.

download_blob

Mengunduh blob ke StorageStreamDownloader. Metode readall() harus digunakan untuk membaca semua konten atau readinto() harus digunakan untuk mengunduh blob ke dalam aliran. Menggunakan chunks() mengembalikan iterator yang memungkinkan pengguna untuk melakukan iterasi atas konten dalam gugus.

exists

Mengembalikan True jika kontainer ada dan mengembalikan False jika tidak.

find_blobs_by_tags

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan yang tagnya cocok dengan ekspresi pencarian yang diberikan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

from_connection_string

Membuat ContainerClient dari String Koneksi.

from_container_url

Buat ContainerClient dari url kontainer.

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_access_policy

Mendapatkan izin untuk kontainer yang ditentukan. Izin menunjukkan apakah data kontainer dapat diakses secara publik.

get_container_properties

Mengembalikan semua metadata dan properti sistem yang ditentukan pengguna untuk kontainer yang ditentukan. Data yang dikembalikan tidak menyertakan daftar blob kontainer.

list_blob_names

Mengembalikan generator untuk mencantumkan nama blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

Perhatikan bahwa tidak ada properti atau metadata tambahan yang akan dikembalikan saat menggunakan API ini. Selain itu, API ini tidak memiliki opsi untuk menyertakan blob tambahan seperti rekam jepret, versi, blob yang dihapus sementara, dll. Untuk mendapatkan salah satu data ini, gunakan list_blobs.

list_blobs

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

set_container_access_policy

Mengatur izin untuk kontainer yang ditentukan atau kebijakan akses tersimpan yang dapat digunakan dengan Tanda Tangan Akses Bersama. Izin menunjukkan apakah blob dalam kontainer dapat diakses secara publik.

set_container_metadata

Mengatur satu atau beberapa pasangan nilai nama yang ditentukan pengguna untuk kontainer yang ditentukan. Setiap panggilan ke operasi ini menggantikan semua metadata yang ada yang dilampirkan ke kontainer. Untuk menghapus semua metadata dari kontainer, panggil operasi ini tanpa dict metadata.

set_premium_page_blob_tier_blobs

Mengatur tingkat blob halaman pada semua blob. API ini hanya didukung untuk blob halaman pada akun premium.

Jumlah maksimum blob yang dapat diperbarui dalam satu permintaan adalah 256.

set_standard_blob_tier_blobs

Operasi ini mengatur tingkat pada blob blok.

Tingkat blob blok menentukan jenis penyimpanan Hot/Cool/Archive. Operasi ini tidak memperbarui ETag blob.

Jumlah maksimum blob yang dapat diperbarui dalam satu permintaan adalah 256.

upload_blob

Membuat blob baru dari sumber data dengan potongan otomatis.

walk_blobs

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan. Operasi ini akan mencantumkan blob sesuai dengan hierarki, seperti yang dibatasi oleh karakter pemisah yang ditentukan.

acquire_lease

Meminta sewa baru. Jika kontainer tidak memiliki sewa aktif, Blob service membuat sewa pada kontainer dan mengembalikan ID sewa baru.

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

Parameter

lease_duration
int
Diperlukan

Menentukan durasi sewa, dalam detik, atau negatif satu (-1) untuk sewa yang tidak pernah kedaluwarsa. Sewa yang tidak terbatas bisa antara 15 dan 60 detik. Durasi sewa tidak dapat diubah menggunakan pembaruan atau perubahan. Defaultnya adalah -1 (sewa tak terbatas).

lease_id
str
Diperlukan

ID sewa yang diusulkan, dalam format string GUID. Blob service mengembalikan 400 (Permintaan tidak valid) jika ID sewa yang diusulkan tidak dalam format yang benar.

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 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 BlobLeaseClient, yang dapat dijalankan di manajer konteks.

Tipe hasil

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, operasi gagal.

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

Parameter

metadata
dict[str, str]
Diperlukan

Dict dengan pasangan name_value untuk dikaitkan dengan kontainer sebagai metadata. Contoh:{'Category':'test'}

public_access
PublicAccess
Diperlukan

Nilai yang mungkin termasuk: 'kontainer', 'blob'.

container_encryption_scope
dict atau ContainerEncryptionScope

Menentukan cakupan enkripsi default untuk 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 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

Kamus header respons.

Tipe hasil

delete_blob

Menandai blob atau rekam jepret yang ditentukan untuk dihapus.

Blob kemudian dihapus selama pengumpulan sampah. Perhatikan bahwa untuk menghapus blob, Anda harus menghapus semua rekam jepretnya. Anda dapat menghapus keduanya secara bersamaan dengan operasi delete_blob.

Jika kebijakan penyimpanan penghapusan diaktifkan untuk layanan, maka operasi ini akan menghapus blob atau rekam jepret dan mempertahankan blob atau rekam jepret untuk jumlah hari yang ditentukan. Setelah jumlah hari yang ditentukan, data blob dihapus dari layanan selama pengumpulan sampah. Blob atau rekam jepret yang dihapus sementara dapat diakses melalui list_blobs opsi include=["deleted"] . Blob atau rekam jepret yang dihapus sementara dapat dipulihkan menggunakan <xref:azure.storage.blob.BlobClient.undelete>

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

Parameter

blob
str atau BlobProperties
Diperlukan

Blob yang digunakan untuk berinteraksi. Jika ditentukan, nilai ini akan menggantikan nilai blob yang ditentukan dalam URL blob.

delete_snapshots
str
Diperlukan

Diperlukan jika blob memiliki rekam jepret terkait. Nilai meliputi:

  • "only": Hanya menghapus rekam jepret blob.

  • "include": Menghapus blob bersama dengan semua rekam jepret.

version_id
str

Parameter id versi adalah nilai DateTime buram yang, saat ada, menentukan versi blob yang akan dihapus.

Baru dalam versi 12.4.0.

Argumen kata kunci ini diperkenalkan dalam versi API '2019-12-12'.

lease
BlobLeaseClient atau str

Diperlukan jika blob memiliki sewa aktif. Nilai dapat menjadi objek BlobLeaseClient atau ID sewa sebagai string.

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.

if_tags_match_condition
str

Tentukan SQL di mana klausa pada tag blob hanya beroperasi pada blob dengan nilai yang cocok. misalnya. "\"tagname\"='my tag'"

Baru dalam versi 12.4.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_blobs

Menandai blob atau rekam jepret yang ditentukan untuk dihapus.

Blob kemudian dihapus selama pengumpulan sampah. Perhatikan bahwa untuk menghapus blob, Anda harus menghapus semua rekam jepretnya. Anda dapat menghapus keduanya secara bersamaan dengan operasi delete_blobs.

Jika kebijakan penyimpanan penghapusan diaktifkan untuk layanan, maka operasi ini akan menghapus blob atau rekam jepret dan mempertahankan blob atau rekam jepret selama jumlah hari yang ditentukan. Setelah jumlah hari yang ditentukan, data blob dihapus dari layanan selama pengumpulan sampah. Blob atau rekam jepret yang dihapus sementara dapat diakses melalui list_blobs menentukan include=["deleted"] Blob atau rekam jepret yang dihapus sementara dapat dipulihkan menggunakan <xref:azure.storage.blob.BlobClient.undelete>

Jumlah maksimum blob yang dapat dihapus dalam satu permintaan adalah 256.

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

Parameter

blobs
str atau dict(str, Any) atau BlobProperties
Diperlukan

Blob yang akan dihapus. Ini bisa menjadi satu blob, atau beberapa nilai dapat disediakan, di mana setiap nilai adalah nama blob (str) atau BlobProperties.

Catatan

Saat jenis blob dict, berikut adalah daftar kunci, aturan nilai.

nama blob:

kunci: 'nama', jenis nilai: str

rekam jepret yang ingin Anda hapus:

kunci: 'snapshot', jenis nilai: str

id versi:

kunci: 'version_id', jenis nilai: str

apakah akan menghapus rekam jepret saat menghapus blob:

kunci: 'delete_snapshots', nilai: 'include' atau 'only'

jika blob dimodifikasi atau tidak:

kunci: 'if_modified_since', 'if_unmodified_since', jenis nilai: tanggalwaktu

etag:

kunci: 'etag', jenis nilai: str

cocok dengan etag atau tidak:

kunci: 'match_condition', jenis nilai: MatchConditions

kondisi pencocokan tag:

kunci: 'if_tags_match_condition', jenis nilai: str

Sewa:

kunci: 'lease_id', jenis nilai: Union[str, LeaseClient]

batas waktu untuk subkueri:

kunci: 'batas waktu', jenis nilai: int

delete_snapshots
str

Diperlukan jika blob memiliki rekam jepret terkait. Nilai meliputi:

  • "only": Hanya menghapus rekam jepret blob.

  • "include": Menghapus blob bersama dengan semua rekam jepret.

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.

if_tags_match_condition
str

Tentukan SQL di mana klausa pada tag blob hanya beroperasi pada blob dengan nilai yang cocok. misalnya. "\"tagname\"='my tag'"

Baru dalam versi 12.4.0.

raise_on_any_failure
bool

Ini adalah param boolean yang default ke True. Ketika ini diatur, pengecualian dimunculkan bahkan jika ada satu kegagalan operasi.

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

Iterator respons, satu untuk setiap blob secara berurutan

Tipe hasil

delete_container

Menandai kontainer yang ditentukan untuk penghapusan. Kontainer dan blob apa pun yang terkandung di dalamnya kemudian dihapus selama pengumpulan sampah.

delete_container(**kwargs: Any) -> None

Parameter

lease
BlobLeaseClient atau str

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

download_blob

Mengunduh blob ke StorageStreamDownloader. Metode readall() harus digunakan untuk membaca semua konten atau readinto() harus digunakan untuk mengunduh blob ke dalam aliran. Menggunakan chunks() mengembalikan iterator yang memungkinkan pengguna untuk melakukan iterasi atas konten dalam gugus.

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

Parameter

blob
str atau BlobProperties
Diperlukan

Blob untuk berinteraksi. Jika ditentukan, nilai ini akan menggantikan nilai blob yang ditentukan dalam URL blob.

offset
int
Diperlukan

Mulai rentang byte yang digunakan untuk mengunduh bagian blob. Harus diatur jika panjang disediakan.

length
int
Diperlukan

Jumlah byte yang akan dibaca dari aliran. Ini opsional, tetapi harus disediakan untuk performa optimal.

version_id
str

Parameter id versi adalah nilai DateTime buram yang, saat ada, menentukan versi blob yang akan diunduh.

Baru dalam versi 12.4.0.

Argumen kata kunci ini diperkenalkan dalam versi API '2019-12-12'.

validate_content
bool

Jika true, menghitung hash MD5 untuk setiap gugus blob. Layanan penyimpanan memeriksa hash konten yang telah tiba dengan hash yang dikirim. Ini terutama berharga untuk mendeteksi bitflip pada kawat jika menggunakan http alih-alih https, sebagai https (default), sudah akan memvalidasi. Perhatikan bahwa hash MD5 ini tidak disimpan dengan blob. Perhatikan juga bahwa jika diaktifkan, algoritma pengunggahan yang hemat memori tidak akan digunakan karena komputasi hash MD5 memerlukan buffering seluruh blok, dan melakukannya mengalahkan tujuan algoritma hemat memori.

lease
BlobLeaseClient atau str

Diperlukan jika blob memiliki sewa aktif. Jika ditentukan, download_blob hanya berhasil jika sewa blob aktif dan cocok dengan ID ini. Nilai dapat menjadi objek BlobLeaseClient atau ID sewa sebagai string.

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.

if_tags_match_condition
str

Tentukan SQL di mana klausa pada tag blob hanya beroperasi pada blob dengan nilai yang cocok. misalnya. "\"tagname\"='my tag'"

Baru dalam versi 12.4.0.

cpk
CustomerProvidedEncryptionKey

Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS. Karena kunci enkripsi itu sendiri disediakan dalam permintaan, koneksi aman harus dibuat untuk mentransfer kunci.

max_concurrency
int

Jumlah koneksi paralel yang akan diunduh.

encoding
str

Pengodean untuk mendekode byte yang diunduh. Defaultnya adalah Tidak Ada, yaitu tidak ada decoding.

progress_hook
Callable[[int, int], None]

Panggilan balik untuk melacak kemajuan unduhan yang berjalan lama. Tanda tangan adalah fungsi (saat ini: int, total: int) di mana saat ini adalah jumlah byte yang ditransfer sejauh ini, dan total adalah ukuran total unduhan.

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. Metode ini dapat melakukan beberapa panggilan ke layanan dan batas waktu akan berlaku untuk setiap panggilan satu per satu. beberapa panggilan ke layanan Azure dan batas waktu akan berlaku untuk setiap panggilan satu per satu.

Mengembalikan

Objek streaming (StorageStreamDownloader)

Tipe hasil

exists

Mengembalikan True jika kontainer ada dan mengembalikan False jika tidak.

exists(**kwargs: Any) -> bool

Parameter

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

boolean

Tipe hasil

find_blobs_by_tags

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan yang tagnya cocok dengan ekspresi pencarian yang diberikan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

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

Parameter

filter_expression
str
Diperlukan

Ekspresi untuk menemukan blob yang tagnya cocok dengan kondisi yang ditentukan. misalnya. ""yourtagname"='firsttag' and "yourtagname2"='secondtag'"

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 yang dapat diulang (halaman otomatis) dari FilteredBlob.

Tipe hasil

from_connection_string

Membuat ContainerClient dari String Koneksi.

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

Parameter

conn_str
str
Diperlukan

String koneksi ke akun Azure Storage.

container_name
str
Diperlukan

Nama kontainer untuk blob.

credential
nilai default: None

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 kontainer.

Tipe hasil

from_container_url

Buat ContainerClient dari url kontainer.

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

Parameter

container_url
str
Diperlukan

URL titik akhir lengkap ke Kontainer, termasuk token SAS jika digunakan. Ini bisa berupa titik akhir utama, atau titik akhir sekunder tergantung pada location_mode saat ini.

credential
nilai default: None

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. 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.

Mengembalikan

Klien kontainer.

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

Dikta 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(blob: str | BlobProperties, snapshot: str = None, *, version_id: str | None = None) -> BlobClient

Parameter

blob
str atau BlobProperties
Diperlukan

Blob untuk berinteraksi.

snapshot
str
nilai default: None

Rekam jepret blob opsional untuk dioperasikan. Ini bisa menjadi string ID rekam jepret atau respons yang dikembalikan dari 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_access_policy

Mendapatkan izin untuk kontainer yang ditentukan. Izin menunjukkan apakah data kontainer dapat diakses secara publik.

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

Parameter

lease
BlobLeaseClient atau str

Jika ditentukan, get_container_access_policy hanya berhasil jika sewa kontainer aktif dan cocok dengan ID ini.

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

Mengakses informasi kebijakan dalam dict.

Tipe hasil

get_container_properties

Mengembalikan semua metadata dan properti sistem yang ditentukan pengguna untuk kontainer yang ditentukan. Data yang dikembalikan tidak menyertakan daftar blob kontainer.

get_container_properties(**kwargs: Any) -> ContainerProperties

Parameter

lease
BlobLeaseClient atau str

Jika ditentukan, get_container_properties hanya berhasil jika sewa kontainer aktif dan cocok dengan ID ini.

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

Properti untuk kontainer yang ditentukan dalam objek kontainer.

Tipe hasil

list_blob_names

Mengembalikan generator untuk mencantumkan nama blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

Perhatikan bahwa tidak ada properti atau metadata tambahan yang akan dikembalikan saat menggunakan API ini. Selain itu, API ini tidak memiliki opsi untuk menyertakan blob tambahan seperti rekam jepret, versi, blob yang dihapus sementara, dll. Untuk mendapatkan salah satu data ini, gunakan list_blobs.

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

Parameter

name_starts_with
str

Memfilter hasil untuk mengembalikan hanya blob yang namanya dimulai dengan awalan yang ditentukan.

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

Respons iterable (auto-paging) dari nama blob sebagai string.

Tipe hasil

list_blobs

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan.

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

Parameter

name_starts_with
str
Diperlukan

Memfilter hasil untuk mengembalikan hanya blob yang namanya dimulai dengan awalan yang ditentukan.

include
list[str] atau str
Diperlukan

Menentukan satu atau beberapa himpunan data tambahan untuk disertakan dalam respons. Opsinya meliputi: 'snapshot', 'metadata', 'uncommittedblobs', 'copy', 'deleted', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

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

Respons BlobProperties yang dapat diulang (auto-paging).

Tipe hasil

set_container_access_policy

Mengatur izin untuk kontainer yang ditentukan atau kebijakan akses tersimpan yang dapat digunakan dengan Tanda Tangan Akses Bersama. Izin menunjukkan apakah blob dalam kontainer dapat diakses secara publik.

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

Parameter

signed_identifiers
dict[str, AccessPolicy]
Diperlukan

Kamus kebijakan akses untuk dikaitkan dengan kontainer. Kamus mungkin berisi hingga 5 elemen. Kamus kosong akan menghapus kebijakan akses yang ditetapkan pada layanan.

public_access
PublicAccess
Diperlukan

Nilai yang mungkin termasuk: 'kontainer', 'blob'.

lease
BlobLeaseClient atau str

Diperlukan jika kontainer memiliki sewa aktif. Nilai dapat berupa objek BlobLeaseClient atau ID sewa sebagai string.

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 tanggal/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.

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

Dict properti yang diperbarui kontainer (Etag dan terakhir dimodifikasi).

Tipe hasil

set_container_metadata

Mengatur satu atau beberapa pasangan nilai nama yang ditentukan pengguna untuk kontainer yang ditentukan. Setiap panggilan ke operasi ini menggantikan semua metadata yang ada yang dilampirkan ke kontainer. Untuk menghapus semua metadata dari kontainer, panggil operasi ini tanpa dict metadata.

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

Parameter

metadata
dict[str, str]
Diperlukan

Dict yang berisi pasangan nama-nilai untuk dikaitkan dengan kontainer sebagai metadata. Contoh: {'category':'test'}

lease
BlobLeaseClient atau str

Jika ditentukan, set_container_metadata hanya berhasil jika sewa kontainer aktif dan cocok dengan ID ini.

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 .

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

Dict properti yang diperbarui kontainer (Etag dan terakhir dimodifikasi).

Tipe hasil

set_premium_page_blob_tier_blobs

Mengatur tingkat blob halaman pada semua blob. API ini hanya didukung untuk blob halaman pada akun premium.

Jumlah maksimum blob yang dapat diperbarui dalam satu permintaan adalah 256.

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

Parameter

premium_page_blob_tier
PremiumPageBlobTier
Diperlukan

Nilai tingkat blob halaman untuk mengatur blob ke. Tingkat berkorelasi dengan ukuran blob dan jumlah IOPS yang diizinkan. Ini hanya berlaku untuk blob halaman pada akun penyimpanan premium.

Catatan

Jika Anda ingin mengatur tingkat yang berbeda pada blob yang berbeda, atur parameter posisi ini ke Tidak Ada.

Kemudian tingkat blob pada setiap BlobProperties akan diambil.

blobs
str atau dict(str, Any) atau BlobProperties
Diperlukan

Blob yang digunakan untuk berinteraksi. Ini bisa menjadi satu blob, atau beberapa nilai dapat disediakan, di mana setiap nilai adalah nama blob (str) atau BlobProperties.

Catatan

Saat jenis blob dict, berikut adalah daftar kunci, aturan nilai.

nama blob:

key: 'name', value type: str

tingkat blob premium:

kunci: 'blob_tier', jenis nilai: PremiumPageBlobTier

Sewa:

kunci: 'lease_id', jenis nilai: Union[str, LeaseClient]

batas waktu untuk subkueri:

kunci: 'batas waktu', jenis nilai: int

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.

raise_on_any_failure
bool

Ini adalah param boolean yang default ke True. Ketika ini diatur, pengecualian dinaikkan bahkan jika ada satu kegagalan operasi.

Mengembalikan

Iterator respons, satu untuk setiap blob secara berurutan

Tipe hasil

<xref:iterator>[HttpResponse]

set_standard_blob_tier_blobs

Operasi ini mengatur tingkat pada blob blok.

Tingkat blob blok menentukan jenis penyimpanan Hot/Cool/Archive. Operasi ini tidak memperbarui ETag blob.

Jumlah maksimum blob yang dapat diperbarui dalam satu permintaan adalah 256.

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

Parameter

standard_blob_tier
str atau StandardBlobTier
Diperlukan

Menunjukkan tingkat yang akan diatur pada semua blob. Opsinya termasuk 'Hot', 'Cool', 'Archive'. Tingkat panas dioptimalkan untuk menyimpan data yang sering diakses. Tingkat penyimpanan dingin dioptimalkan untuk menyimpan data yang jarang diakses dan disimpan setidaknya selama sebulan. Tingkat arsip dioptimalkan untuk menyimpan data yang jarang diakses dan disimpan setidaknya selama enam bulan dengan persyaratan latensi yang fleksibel.

Catatan

Jika Anda ingin mengatur tingkat yang berbeda pada blob yang berbeda, atur parameter posisi ini ke Tidak Ada.

Kemudian tingkat blob pada setiap BlobProperties akan diambil.

blobs
str atau dict(str, Any) atau BlobProperties
Diperlukan

Blob yang digunakan untuk berinteraksi. Ini bisa menjadi satu blob, atau beberapa nilai dapat disediakan, di mana setiap nilai adalah nama blob (str) atau BlobProperties.

Catatan

Saat jenis blob dict, berikut adalah daftar kunci, aturan nilai.

nama blob:

key: 'name', value type: str

tingkat blob standar:

kunci: 'blob_tier', jenis nilai: StandardBlobTier

prioritas rehidrasi:

kunci: 'rehydrate_priority', jenis nilai: RehydratePriority

Sewa:

kunci: 'lease_id', jenis nilai: Union[str, LeaseClient]

Snapshot:

kunci: "rekam jepret", jenis nilai: str

id versi:

kunci: "version_id", jenis nilai: str

kondisi pencocokan tag:

kunci: 'if_tags_match_condition', jenis nilai: str

batas waktu untuk subkueri:

kunci: 'batas waktu', jenis nilai: int

rehydrate_priority
RehydratePriority

Menunjukkan prioritas untuk merehidrasi blob yang diarsipkan

if_tags_match_condition
str

Tentukan SQL di mana klausul pada tag blob hanya beroperasi pada blob dengan nilai yang cocok. misalnya. "\"tagname\"='my tag'"

Baru dalam versi 12.4.0.

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.

raise_on_any_failure
bool

Ini adalah param boolean yang default ke True. Ketika ini diatur, pengecualian dinaikkan bahkan jika ada satu kegagalan operasi.

Mengembalikan

Iterator respons, satu untuk setiap blob secara berurutan

Tipe hasil

upload_blob

Membuat blob baru dari sumber data dengan potongan otomatis.

upload_blob(name: str | BlobProperties, data: bytes | str | Iterable | IO, blob_type: str | BlobType = BlobType.BLOCKBLOB, length: int | None = None, metadata: Dict[str, str] | None = None, **kwargs) -> BlobClient

Parameter

name
str atau BlobProperties
Diperlukan

Blob yang digunakan untuk berinteraksi. Jika ditentukan, nilai ini akan menggantikan nilai blob yang ditentukan dalam URL blob.

data
Diperlukan

Data blob yang akan diunggah.

blob_type
BlobType
Diperlukan

Jenis blob. Ini bisa berupa BlockBlob, PageBlob, atau AppendBlob. Nilai defaultnya adalah BlockBlob.

length
int
Diperlukan

Jumlah byte yang akan dibaca dari aliran. Ini bersifat opsional, tetapi harus disediakan untuk performa yang optimal.

metadata
dict(str, str)
Diperlukan

Pasangan nama-nilai yang terkait dengan blob sebagai metadata.

overwrite
bool

Apakah blob yang akan diunggah harus menimpa data saat ini. Jika True, upload_blob akan menimpa data yang ada. Jika diatur ke False, operasi akan gagal dengan ResourceExistsError. Pengecualian untuk hal di atas adalah dengan Tambahkan jenis blob: jika diatur ke False dan data sudah ada, kesalahan tidak akan dimunculkan dan data akan ditambahkan ke blob yang ada. Jika diatur overwrite=True, maka blob tambahan yang ada akan dihapus, dan yang baru dibuat. Default ke False.

content_settings
ContentSettings

Objek ContentSettings yang digunakan untuk mengatur properti blob. Digunakan untuk mengatur tipe konten, pengodean, bahasa, disposisi, md5, dan kontrol cache.

validate_content
bool

Jika true, menghitung hash MD5 untuk setiap gugus blob. Layanan penyimpanan memeriksa hash konten yang telah tiba dengan hash yang dikirim. Ini terutama berharga untuk mendeteksi bitflips pada kawat jika menggunakan http alih-alih https, sebagai https (default), sudah akan memvalidasi. Perhatikan bahwa hash MD5 ini tidak disimpan dengan blob. Perhatikan juga bahwa jika diaktifkan, algoritma pengunggahan yang hemat memori tidak akan digunakan, karena komputasi hash MD5 memerlukan buffering seluruh blok, dan melakukannya mengalahkan tujuan algoritma yang hemat memori.

lease
BlobLeaseClient atau str

Diperlukan jika kontainer memiliki sewa aktif. Nilai dapat berupa objek BlobLeaseClient atau ID sewa sebagai string.

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.

if_tags_match_condition
str

Tentukan SQL di mana klausul pada tag blob hanya beroperasi pada blob dengan nilai yang cocok. misalnya. "\"tagname\"='my tag'"

Baru dalam versi 12.4.0.

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. Metode ini dapat melakukan beberapa panggilan ke layanan dan batas waktu akan berlaku untuk setiap panggilan satu per satu.

premium_page_blob_tier
PremiumPageBlobTier

Nilai tingkat blob halaman untuk mengatur blob ke. Tingkat berkorelasi dengan ukuran blob dan jumlah IOPS yang diizinkan. Ini hanya berlaku untuk blob halaman pada akun penyimpanan premium.

standard_blob_tier
StandardBlobTier

Nilai tingkat blob standar untuk mengatur blob. Untuk versi pustaka ini, ini hanya berlaku untuk memblokir blob pada akun penyimpanan standar.

maxsize_condition
int

Header bersyar opsional. Panjang maksimum dalam byte yang diizinkan untuk blob tambahan. Jika operasi Tambahkan Blok akan menyebabkan blob melebihi batas tersebut atau jika ukuran blob sudah lebih besar dari nilai yang ditentukan di header ini, permintaan akan gagal dengan kesalahan MaxBlobSizeConditionNotMet (kode status HTTP 412 - Prasyarat Gagal).

max_concurrency
int

Jumlah maksimum koneksi paralel yang digunakan ketika ukuran blob melebihi 64MB.

cpk
CustomerProvidedEncryptionKey

Mengenkripsi data di sisi layanan dengan kunci yang diberikan. Penggunaan kunci yang disediakan pelanggan harus dilakukan melalui HTTPS. Karena kunci enkripsi itu sendiri disediakan dalam permintaan, koneksi aman harus dibuat untuk mentransfer kunci.

encryption_scope
str

Cakupan enkripsi yang telah ditentukan sebelumnya yang digunakan untuk mengenkripsi data pada layanan. Cakupan enkripsi dapat dibuat menggunakan API Manajemen dan direferensikan di sini berdasarkan nama. Jika cakupan enkripsi default telah ditentukan di kontainer, nilai ini akan menimpanya jika cakupan tingkat kontainer dikonfigurasi untuk memungkinkan penimpaan. Jika tidak, kesalahan akan muncul.

Baru dalam versi 12.2.0.

encoding
str

Default ke UTF-8.

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

Panggilan balik untuk melacak kemajuan unggahan yang berjalan lama. Tanda tangan adalah fungsi (saat ini: int, total: Opsional[int]) di mana saat ini adalah jumlah byte yang ditransfer sejauh ini, dan total adalah ukuran blob atau Tidak Ada jika ukurannya tidak diketahui.

Mengembalikan

BlobClient untuk berinteraksi dengan blob yang baru diunggah.

Tipe hasil

walk_blobs

Mengembalikan generator untuk mencantumkan blob di bawah kontainer yang ditentukan. Generator akan dengan malas mengikuti token kelanjutan yang dikembalikan oleh layanan. Operasi ini akan mencantumkan blob sesuai dengan hierarki, seperti yang dibatasi oleh karakter pemisah yang ditentukan.

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

Parameter

name_starts_with
str
Diperlukan

Memfilter hasil untuk mengembalikan hanya blob yang namanya dimulai dengan awalan yang ditentukan.

include
list[str] atau str
Diperlukan

Menentukan satu atau beberapa himpunan data tambahan untuk disertakan dalam respons. Opsinya meliputi: 'snapshot', 'metadata', 'uncommittedblobs', 'copy', 'deleted', 'deletedwithversions', 'tags', 'versions', 'immutabilitypolicy', 'legalhold'.

delimiter
str
Diperlukan

Ketika permintaan menyertakan parameter ini, operasi mengembalikan elemen BlobPrefix dalam isi respons yang bertindak sebagai tempat penampung untuk semua blob yang namanya dimulai dengan substring yang sama hingga tampilan karakter pemisah. Pemisah mungkin satu karakter atau string.

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

Respons BlobProperties yang dapat diulang (auto-paging).

Tipe hasil

Atribut

api_version

Versi STORAGE API 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 secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

Pengecualian

secondary_hostname

Nama host titik akhir sekunder.

Jika tidak tersedia, ini akan menjadi Tidak Ada. Untuk secara eksplisit menentukan nama host sekunder, gunakan argumen kata kunci secondary_hostname opsional pada instantiation.

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 penuh ke entitas ini, termasuk token SAS jika digunakan. :rtype: str