Cantumkan Blob
Operasi List Blobs
mengembalikan daftar blob di bawah kontainer yang ditentukan.
Minta
Anda dapat membuat permintaan List Blobs
sebagai berikut. HTTPS disarankan. Ganti myaccount dengan nama akun penyimpanan Anda.
Metode | Meminta URI | Versi HTTP |
---|---|---|
GET |
https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list |
HTTP/1.1 |
URI layanan penyimpanan yang ditimulasi
Saat Anda membuat permintaan terhadap layanan penyimpanan yang ditimulasi, tentukan nama host emulator dan port Azure Blob Storage sebagai 127.0.0.1:10000
, diikuti dengan nama akun penyimpanan yang ditimulasi.
Metode | Meminta URI | Versi HTTP |
---|---|---|
GET |
http://127.0.0.1:10000/devstoreaccount1/mycontainer?restype=container&comp=list |
HTTP/1.1 |
Untuk informasi selengkapnya, lihat Menggunakan emulator Azurite untuk pengembangan Azure Storage lokal.
Parameter URI
Anda dapat menentukan parameter tambahan berikut pada URI.
Parameter | Deskripsi |
---|---|
prefix |
Fakultatif. Memfilter hasil untuk mengembalikan hanya blob dengan nama yang dimulai dengan awalan yang ditentukan. Dalam akun yang memiliki namespace hierarkis, kesalahan akan terjadi jika nama file muncul di tengah jalur awalan. Misalnya, Anda mungkin mencoba menemukan blob yang diberi nama readmefile.txt dengan menggunakan jalur awalan folder1/folder2/readme/readmefile.txt . Kesalahan akan muncul jika ada subfolder yang berisi file bernama readme . |
delimiter |
Fakultatif. Ketika permintaan menyertakan parameter ini, operasi mengembalikan elemen BlobPrefix dalam isi respons. Elemen ini bertindak sebagai tempat penampung untuk semua blob dengan nama yang dimulai dengan substring yang sama, hingga tampilan karakter pemisah. Pemisah dapat berupa satu karakter atau string. |
marker |
Fakultatif. Nilai string yang mengidentifikasi bagian daftar yang akan dikembalikan dengan operasi daftar berikutnya. Operasi mengembalikan nilai penanda dalam isi respons jika daftar yang dikembalikan tidak selesai. Anda kemudian dapat menggunakan nilai penanda dalam panggilan berikutnya untuk meminta kumpulan item daftar berikutnya. Nilai penanda buram untuk klien. |
maxresults |
Fakultatif. Menentukan jumlah maksimum blob yang akan dikembalikan, termasuk semua elemen BlobPrefix . Jika permintaan tidak menentukan maxresults , atau menentukan nilai yang lebih besar dari 5.000, server akan mengembalikan hingga 5.000 item. Jika ada hasil tambahan untuk dikembalikan, layanan mengembalikan token kelanjutan dalam elemen respons NextMarker . Dalam kasus tertentu, layanan mungkin mengembalikan lebih sedikit hasil daripada yang ditentukan oleh maxresults , dan juga mengembalikan token kelanjutan.Mengatur maxresults ke nilai yang kurang dari atau sama dengan nol menghasilkan kode respons kesalahan 400 (Permintaan Buruk). |
include={snapshots,metadata,uncommittedblobs,copy,deleted,tags,versions, deletedwithversions,immutabilitypolicy,legalhold,permissions} |
Fakultatif. Menentukan satu atau beberapa himpunan data untuk disertakan dalam respons: - snapshots : Menentukan bahwa rekam jepret harus disertakan dalam enumerasi. Rekam jepret tercantum dari yang terlama ke terbaru dalam respons.- metadata : Menentukan bahwa metadata blob dikembalikan dalam respons.- uncommittedblobs : Menentukan bahwa blob yang bloknya telah diunggah, tetapi yang belum diterapkan dengan menggunakan Put Block List, disertakan dalam respons.- copy : Versi 2012-02-12 dan yang lebih baru. Menentukan bahwa metadata yang terkait dengan operasi Copy Blob saat ini atau sebelumnya harus disertakan dalam respons.- deleted : Versi 2017-07-29 dan yang lebih baru. Menentukan bahwa blob yang dihapus sementara harus disertakan dalam respons. - tags : Versi 2019-12-12 dan yang lebih baru. Menentukan bahwa tag indeks blob yang ditentukan pengguna harus disertakan dalam respons. - versions : Versi 2019-12-12 dan yang lebih baru. Menentukan bahwa versi blob harus disertakan dalam enumerasi.- deletedwithversions : Versi 2020-10-02 dan yang lebih baru. Menentukan bahwa blob yang dihapus dengan versi apa pun (aktif atau dihapus) harus disertakan dalam respons. Item yang telah Anda hapus secara permanen muncul dalam respons hingga diproses oleh pengumpulan sampah. Gunakan tag \<HasVersionsOnly\> , dan nilai true . - immutabilitypolicy : Versi 2020-06-12 dan yang lebih baru. Menentukan bahwa enumerasi harus menyertakan kebijakan kekekalan hingga tanggal, dan mode kebijakan imutabilitas blob.- legalhold : Versi 2020-06-12 dan yang lebih baru. Menentukan bahwa enumerasi harus menyertakan penahanan legal blob.- permissions : Versi 2020-06-12 dan yang lebih baru. Hanya didukung untuk akun dengan namespace hierarkis yang diaktifkan. Jika permintaan menyertakan parameter ini, maka pemilik, grup, izin, dan daftar kontrol akses untuk blob atau direktori yang tercantum akan disertakan dalam enumerasi. Untuk menentukan lebih dari salah satu opsi ini pada URI, Anda harus memisahkan setiap opsi dengan koma yang dikodekan URL ("%82"). |
showonly={deleted,files,directories} |
Fakultatif. Menentukan salah satu himpunan data ini untuk dikembalikan dalam respons: - deleted : Opsional. Versi 2020-08-04 dan yang lebih baru. Hanya untuk akun yang diaktifkan dengan namespace hierarkis. Saat permintaan menyertakan parameter ini, daftar hanya berisi blob yang dihapus sementara. Perhatikan bahwa fallback otorisasi POSIX ACL tidak didukung untuk mencantumkan blob yang dihapus sementara. Jika include=deleted juga ditentukan, permintaan gagal dengan Permintaan Buruk (400).- files : Opsional. Versi 2020-12-06 dan yang lebih baru. Hanya untuk akun yang diaktifkan dengan namespace hierarkis. Ketika permintaan menyertakan parameter ini, daftar hanya berisi file. - directories : Opsional. Versi 2020-12-06 dan yang lebih baru. Hanya untuk akun yang diaktifkan dengan namespace hierarkis. Saat permintaan menyertakan parameter ini, daftar hanya berisi direktori. |
timeout |
Fakultatif. Parameter timeout dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur batas waktu untuk operasi Blob Storage. |
Header permintaan
Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.
Header permintaan | Deskripsi |
---|---|
Authorization |
Diperlukan. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage. |
Date atau x-ms-date |
Diperlukan. Menentukan Waktu Universal Terkoordinasi (UTC) untuk permintaan tersebut. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage. |
x-ms-version |
Diperlukan untuk semua permintaan resmi, dan opsional untuk permintaan anonim. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan Versi untuk layanan Azure Storage. |
x-ms-client-request-id |
Fakultatif. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 kibibyte (KiB) yang dicatat dalam log saat pengelogan dikonfigurasi. Kami sangat menyarankan Anda menggunakan header ini untuk menghubungkan aktivitas sisi klien dengan permintaan yang diterima server. Untuk informasi selengkapnya, lihat Memantau Azure Blob Storage. |
x-ms-upn |
Fakultatif. Hanya berlaku saat namespace hierarki diaktifkan untuk akun, dan include=permissions disediakan dalam permintaan. Jika true , nilai identitas pengguna yang dikembalikan di>Pemilik <, <>Grup , dan <bidang> Acl diubah dari ID objek Microsoft Entra menjadi nama utama pengguna. Jika false , nilai dikembalikan sebagai ID objek Microsoft Entra. Nilai defaultnya adalah false . Perhatikan bahwa ID objek grup dan aplikasi tidak diterjemahkan karena tidak memiliki nama ramah yang unik. |
Isi permintaan
Tidak.
Permintaan sampel
Lihat Menghitung sumber daya blob untuk permintaan sampel.
Jawaban
Respons mencakup kode status HTTP, sekumpulan header respons, dan isi respons dalam format XML.
Kode status
Operasi yang berhasil mengembalikan kode status 200 (OK). Untuk informasi tentang kode status, lihat Status dan kode kesalahan.
Header respons
Respons untuk operasi ini mencakup header berikut. Respons juga dapat mencakup header HTTP standar tambahan. Semua header standar sesuai dengan spesifikasi protokol HTTP/1.1 .
Isi respons
Format respons XML adalah sebagai berikut.
Perhatikan bahwa elemen Prefix
, Marker
, MaxResults
, dan Delimiter
hanya ada jika ditentukan pada URI permintaan. Elemen NextMarker
memiliki nilai hanya jika hasil daftar tidak selesai.
Rekam jepret, metadata blob, dan blob yang tidak dilakukan disertakan dalam respons hanya jika ditentukan dengan parameter include
pada URI permintaan.
Dalam versi 2009-09-19 dan yang lebih baru, properti blob dienkapsulasi dalam elemen Properties
.
Dimulai dengan versi 2009-09-19, List Blobs
mengembalikan elemen yang diganti namanya berikut dalam isi respons:
Last-Modified
(sebelumnyaLastModified
)Content-Length
(sebelumnyaSize
)Content-Type
(sebelumnyaContentType
)Content-Encoding
(sebelumnyaContentEncoding
)Content-Language
(sebelumnyaContentLanguage
)
Elemen Content-MD5
muncul untuk blob yang dibuat dengan versi 2009-09-19 dan yang lebih baru. Dalam versi 2012-02-12 dan yang lebih baru, Blob Storage menghitung nilai Content-MD5
saat Anda mengunggah blob dengan menggunakan Put Blob. Blob Storage tidak menghitung ini saat Anda membuat blob dengan menggunakan Put Block List. Anda dapat secara eksplisit mengatur nilai Content-MD5
saat membuat blob, atau dengan memanggil Put Block List atau Atur Properti Blob operasi.
Untuk versi dari 2009-09-19 dan yang lebih baru, tetapi sebelum versi 2015-02-21, Anda tidak dapat memanggil List Blobs
pada kontainer yang menyertakan blob tambahan. Layanan mengembalikan kode status 409 (Konflik) jika hasil daftar berisi blob tambahan.
LeaseState
dan LeaseDuration
hanya muncul di versi 2012-02-12 dan yang lebih baru.
CopyId
, CopyStatus
, CopySource
, CopyProgress
, CopyCompletionTime
, dan CopyStatusDescription
hanya muncul di versi 2012-02-12 dan yang lebih baru, ketika operasi ini menyertakan parameter include={copy}
. Elemen-elemen ini tidak muncul jika blob ini belum pernah menjadi tujuan dalam operasi Copy Blob
. Elemen tidak muncul jika blob ini telah dimodifikasi setelah operasi Copy Blob
yang disimpulkan, dengan menggunakan Set Blob Properties
, Put Blob
, atau Put Block List
. Elemen-elemen ini juga tidak muncul dengan blob yang dibuat oleh Copy Blob, sebelum versi 2012-02-12.
Dalam versi 2013-08-15 dan yang lebih baru, elemen EnumerationResults
berisi atribut ServiceEndpoint
yang menentukan titik akhir blob. Elemen ini juga berisi bidang ContainerName
yang menentukan nama kontainer. Di versi sebelumnya, kedua atribut ini digabungkan bersama-sama di bidang ContainerName
. Juga dalam versi 2013-08-15 dan yang lebih baru, elemen Url
di bawah Blob
telah dihapus.
Untuk versi 2015-02-21 dan yang lebih baru, List Blobs
mengembalikan blob dari semua jenis (blok, halaman, dan blob penambahan).
Untuk versi 2015-12-11 dan yang lebih baru, List Blobs
mengembalikan elemen ServerEncrypted
. Elemen ini diatur ke true
jika metadata blob dan aplikasi sepenuhnya dienkripsi, dan false
sebaliknya.
Untuk versi 2016-05-31 dan yang lebih baru, List Blobs
mengembalikan elemen IncrementalCopy
untuk blob salinan bertahap dan rekam jepret, dengan nilai diatur ke true
.
Untuk versi 2017-04-17 dan yang lebih baru, List Blobs
mengembalikan elemen AccessTier
jika tingkat akses telah diatur secara eksplisit. Untuk daftar tingkat blob halaman premium yang diizinkan, lihat Penyimpanan premium berkinerja tinggi dan disk terkelola untuk VM. Untuk Blob Storage atau akun v2 tujuan umum, nilai yang valid adalah Hot
, Cool
, dan Archive
. Jika blob dalam status tertunda rehidrasi, maka elemen ArchiveStatus
dikembalikan dengan salah satu nilai yang valid (rehydrate-pending-to-hot
, rehydrate-pending-to-cool
, atau rehydrate-pending-to-cold
). Untuk informasi terperinci tentang tingkatan blob blok, lihat tingkat penyimpanan Panas, dingin, dan arsip.
Untuk versi 2017-04-17 dan yang lebih baru, List Blobs
mengembalikan elemen AccessTierInferred
pada Blob Storage atau akun v2 tujuan umum. Jika blob blok tidak memiliki set tingkat akses, informasi tingkat disimpulkan dari properti akun penyimpanan, dan nilai ini diatur ke true
. Header ini hanya ada jika tingkat disimpulkan dari properti akun.
Untuk versi 2017-04-17 dan yang lebih baru, List Blobs
mengembalikan elemen AccessTierChangeTime
pada Blob Storage atau akun v2 tujuan umum. Ini dikembalikan hanya jika tingkat pada blob blok pernah ditetapkan. Untuk informasi selengkapnya, lihat representasi nilai tanggal-waktu di header.
Untuk versi 2017-07-29 dan yang lebih baru, Deleted
, DeletedTime
, dan RemainingRetentionDays
muncul ketika operasi ini menyertakan parameter include={deleted}
. Elemen-elemen ini tidak muncul jika blob ini tidak dihapus. Elemen-elemen ini muncul untuk blob atau rekam jepret yang dihapus dengan operasi DELETE
, ketika fitur penghapusan sementara diaktifkan. Elemen Deleted
diatur ke true
untuk blob dan rekam jepret yang dihapus sementara.
Deleted-Time
sesuai dengan waktu ketika blob dihapus.
RemainingRetentionDays
menunjukkan jumlah hari setelah blob yang dihapus sementara dihapus secara permanen.
Untuk versi 2017-11-09 dan yang lebih baru, Creation-Time
mengembalikan waktu pembuatan blob ini.
Untuk versi 2019-02-02 dan yang lebih baru, List Blobs
mengembalikan elemen CustomerProvidedKeySha256
jika blob dienkripsi dengan kunci yang disediakan pelanggan. Nilai akan diatur ke hash SHA-256 dari kunci yang digunakan untuk mengenkripsi blob. Selain itu, jika operasi menyertakan parameter include={metadata}
, dan ada metadata aplikasi yang ada pada blob yang dienkripsi dengan kunci yang disediakan pelanggan, elemen Metadata
akan memiliki atribut Encrypted="true"
. Atribut ini menunjukkan bahwa blob memiliki metadata yang tidak dapat didekripsi sebagai bagian dari operasi List Blobs
. Untuk mengakses metadata untuk blob ini, panggil Dapatkan Properti Blob atau Dapatkan Metadata Blob dengan kunci yang disediakan pelanggan.
Untuk versi 2019-02-02 dan yang lebih baru, List Blobs
mengembalikan elemen EncryptionScope
jika blob dienkripsi dengan cakupan enkripsi. Nilai akan diatur ke nama cakupan enkripsi yang digunakan untuk mengenkripsi blob. Jika operasi menyertakan parameter include={metadata}
, metadata aplikasi pada blob didekripsi secara transparan, dan tersedia dalam elemen Metadata
.
Untuk versi 2019-12-12 dan yang lebih baru, List Blobs
mengembalikan elemen RehydratePriority
pada Blob Storage atau akun v2 tujuan umum, jika objek berada dalam status rehydrate pending
. Nilai yang valid adalah High
dan Standard
.
Untuk versi 2019-12-12 dan yang lebih baru, List Blobs
mengembalikan elemen VersionId
untuk blob dan versi blob yang dihasilkan, saat penerapan versi diaktifkan pada akun.
Untuk versi 2019-12-12 dan yang lebih baru, List Blobs
mengembalikan elemen IsCurrentVersion
untuk versi blob saat ini. Nilai diatur ke true
. Elemen ini memungkinkan Anda membedakan versi saat ini dari versi baca-saja yang dibuat secara otomatis.
Untuk versi 2019-12-12 dan yang lebih baru, List Blobs
mengembalikan elemen TagCount
untuk blob dengan tag apa pun. Elemen Tags
hanya muncul ketika operasi ini menyertakan parameter include={tags}
. Elemen-elemen ini tidak muncul jika tidak ada tag pada blob.
Untuk versi 2019-12-12 dan yang lebih baru, List Blobs
mengembalikan elemen Sealed
untuk blob tambahan. Elemen Sealed
hanya muncul ketika blob tambahan telah disegel. Elemen-elemen ini tidak muncul jika blob tambahan tidak disegel.
Untuk versi 2020-02-10 dan yang lebih baru, List Blobs
mengembalikan elemen LastAccessTime
. Elemen menunjukkan kapan data blob terakhir diakses, sesuai dengan kebijakan pelacakan waktu akses terakhir akun penyimpanan. Elemen tidak dikembalikan jika akun penyimpanan tidak memiliki kebijakan ini, atau kebijakan dinonaktifkan. Untuk informasi tentang mengatur kebijakan pelacakan waktu akses terakhir akun, lihat Blob Service API. Elemen LastAccessTime
tidak melacak terakhir kali ketika metadata blob diakses.
Untuk versi 2020-06-12 dan yang lebih baru, List Blobs
mengembalikan elemen ImmutabilityPolicyUntilDate
dan ImmutabilityPolicyMode
, ketika operasi ini menyertakan parameter include={immutabilitypolicy}
.
Untuk versi 2020-06-12 dan yang lebih baru, List Blobs
mengembalikan elemen LegalHold
, ketika operasi ini menyertakan parameter include={legalhold}
.
Untuk versi 2020-06-12 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen Owner
, Group
, Permissions
, dan Acl
. Permintaan harus berisi parameter include={permissions}
. Perhatikan bahwa elemen Acl
adalah daftar gabungan akses dan daftar kontrol akses default yang diatur pada file atau direktori.
Untuk versi 2020-06-12 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
dengan pemisah mengembalikan elemen Properties
dalam elemen BlobPrefix
. Ini sesuai dengan properti pada direktori.
Untuk versi 2020-08-04 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen DeletionId
untuk blob yang dihapus.
DeletionId
adalah pengidentifikasi 64-bit yang tidak ditandatangani. Elemen ini secara unik mengidentifikasi jalur yang dihapus sementara, untuk membedakannya dari blob lain yang dihapus dengan jalur yang sama.
Untuk versi 2020-10-02 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen properti ResourceType
untuk jalur tersebut. Ini dapat berupa file
atau directory
.
Untuk versi 2021-02-12 dan yang lebih baru, List Blobs
akan mengodekan persen (per RFC 2396) semua nilai elemen Blob
Name
atau BlobPrefix
Name
. Secara khusus, ini akan melakukannya untuk nilai-nilai yang berisi karakter yang tidak valid di XML (U+FFFE atau U+FFFF). Jika dikodekan, elemen Name
akan menyertakan atribut Encoded=true
. Perhatikan bahwa ini hanya terjadi untuk nilai elemen Name
yang berisi karakter yang tidak valid dalam XML, bukan elemen Name
yang tersisa dalam respons.
Untuk versi 2021-06-08 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen properti Placeholder
. Ini mengembalikan elemen ini dalam elemen BlobPrefix
untuk direktori tempat penampung, saat mencantumkan blob yang dihapus dengan pemisah. Direktori tempat penampung ini ada untuk memfasilitasi navigasi ke blob yang dihapus sementara.
Untuk versi 2021-06-08 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen EncryptionContext
. Jika nilai properti konteks enkripsi diatur, nilai akan mengembalikan nilai yang ditetapkan.
Untuk versi 2020-02-10 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs
mengembalikan elemen Expiry-Time
untuk blob yang dihapus.
Expiry-Time
adalah waktu ketika file akan kedaluwarsa, dan dikembalikan untuk file jika kedaluwarsa diatur pada yang sama.
<?xml version="1.0" encoding="utf-8"?>
<EnumerationResults ServiceEndpoint="http://myaccount.blob.core.windows.net/" ContainerName="mycontainer">
<Prefix>string-value</Prefix>
<Marker>string-value</Marker>
<MaxResults>int-value</MaxResults>
<Delimiter>string-value</Delimiter>
<Blobs>
<Blob>
<Name>blob-name</name>
<Snapshot>date-time-value</Snapshot>
<VersionId>date-time-vlue</VersionId>
<IsCurrentVersion>true</IsCurrentVersion>
<Deleted>true</Deleted>
<Properties>
<Creation-Time>date-time-value</Creation-Time>
<Last-Modified>date-time-value</Last-Modified>
<Etag>etag</Etag>
<Owner>owner user id</Owner>
<Group>owning group id</Group>
<Permissions>permission string</Permissions>
<Acl>access control list</Acl>
<ResourceType>file | directory</ResourceType>
<Placeholder>true</Placeholder>
<Content-Length>size-in-bytes</Content-Length>
<Content-Type>blob-content-type</Content-Type>
<Content-Encoding />
<Content-Language />
<Content-MD5 />
<Cache-Control />
<x-ms-blob-sequence-number>sequence-number</x-ms-blob-sequence-number>
<BlobType>BlockBlob|PageBlob|AppendBlob</BlobType>
<AccessTier>tier</AccessTier>
<LeaseStatus>locked|unlocked</LeaseStatus>
<LeaseState>available | leased | expired | breaking | broken</LeaseState>
<LeaseDuration>infinite | fixed</LeaseDuration>
<CopyId>id</CopyId>
<CopyStatus>pending | success | aborted | failed </CopyStatus>
<CopySource>source url</CopySource>
<CopyProgress>bytes copied/bytes total</CopyProgress>
<CopyCompletionTime>datetime</CopyCompletionTime>
<CopyStatusDescription>error string</CopyStatusDescription>
<ServerEncrypted>true</ServerEncrypted>
<CustomerProvidedKeySha256>encryption-key-sha256</CustomerProvidedKeySha256>
<EncryptionContext>encryption-context<EncryptionContext>
<EncryptionScope>encryption-scope-name</EncryptionScope>
<IncrementalCopy>true</IncrementalCopy>
<AccessTierInferred>true</AccessTierInferred>
<AccessTierChangeTime>datetime</AccessTierChangeTime>
<DeletedTime>datetime</DeletedTime>
<RemainingRetentionDays>no-of-days</RemainingRetentionDays>
<TagCount>number of tags between 1 to 10</TagCount>
<RehydratePriority>rehydrate priority</RehydratePriority>
<Expiry-Time>date-time-value</Expiry-Time>
</Properties>
<Metadata>
<Name>value</Name>
</Metadata>
<Tags>
<TagSet>
<Tag>
<Key>TagName</Key>
<Value>TagValue</Value>
</Tag>
</TagSet>
</Tags>
<OrMetadata />
</Blob>
<BlobPrefix>
<Name>blob-prefix</Name>
</BlobPrefix>
</Blobs>
<NextMarker />
</EnumerationResults>
Sampel respons
Lihat Menghitung sumber daya blob untuk respons sampel.
Otorisasi
Otorisasi diperlukan saat memanggil operasi akses data apa pun di Azure Storage. Anda dapat mengotorisasi operasi List Blobs
seperti yang dijelaskan di bawah ini.
Penting
Microsoft merekomendasikan penggunaan ID Microsoft Entra dengan identitas terkelola untuk mengotorisasi permintaan ke Azure Storage. MICROSOFT Entra ID menyediakan keamanan yang unggul dan kemudahan penggunaan dibandingkan dengan otorisasi Kunci Bersama.
Azure Storage mendukung penggunaan ID Microsoft Entra untuk mengotorisasi permintaan ke data blob. Dengan MICROSOFT Entra ID, Anda dapat menggunakan kontrol akses berbasis peran Azure (Azure RBAC) untuk memberikan izin kepada prinsip keamanan. Prinsip keamanan mungkin pengguna, grup, perwakilan layanan aplikasi, atau identitas terkelola Azure. Prinsip keamanan diautentikasi oleh MICROSOFT Entra ID untuk mengembalikan token OAuth 2.0. Token kemudian dapat digunakan untuk mengotorisasi permintaan terhadap layanan Blob.
Untuk mempelajari selengkapnya tentang otorisasi menggunakan ID Microsoft Entra, lihat Mengotorisasi akses ke blob menggunakan ID Microsoft Entra.
Izin
Tercantum di bawah ini adalah tindakan RBAC yang diperlukan untuk pengguna, grup, identitas terkelola, atau perwakilan layanan Microsoft Entra untuk memanggil operasi List Blobs
, dan peran Azure RBAC bawaan yang paling tidak istimewa yang mencakup tindakan ini:
- tindakan Azure RBAC:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
Peran bawaan dengan hak istimewa paling sedikit: Pembaca Data Blob Penyimpanan
Jika menentukan include=tags
:
- tindakan Azure RBAC:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/tags/read
- Peran bawaan dengan hak istimewa paling sedikit: Pemilik Data Blob Penyimpanan
Untuk mempelajari selengkapnya tentang menetapkan peran menggunakan Azure RBAC, lihat Menetapkan peran Azure untuk akses ke data blob.
Komentar
Properti blob dalam respons
Jika Anda telah meminta agar blob yang tidak dikomit disertakan dalam enumerasi, perhatikan bahwa beberapa properti tidak diatur hingga blob diterapkan. Beberapa properti mungkin tidak dikembalikan dalam respons.
Elemen x-ms-blob-sequence-number
hanya dikembalikan untuk blob halaman.
Elemen OrMetadata
hanya dikembalikan untuk blob blok.
Untuk blob halaman, nilai yang dikembalikan dalam elemen Content-Length
sesuai dengan nilai header x-ms-blob-content-length
blob.
Elemen Content-MD5
muncul di isi respons, hanya jika telah diatur pada blob dengan menggunakan versi 2009-09-19 atau yang lebih baru. Anda dapat mengatur properti Content-MD5
saat blob dibuat, atau dengan memanggil Mengatur Properti Blob. Dalam versi 2012-02-12 dan yang lebih baru, Put Blob
menetapkan nilai MD5 blob blok, bahkan ketika permintaan Put Blob
tidak menyertakan header MD5.
Metadata dalam respons
Elemen Metadata
hanya ada jika parameter include=metadata
ditentukan pada URI. Dalam elemen Metadata
, nilai setiap pasangan nama-nilai tercantum dalam elemen yang sesuai dengan nama pasangan.
Perhatikan bahwa metadata yang diminta dengan parameter ini harus disimpan sesuai dengan pembatasan penamaan yang diberlakukan oleh Blob Storage versi 2009-09-19. Dimulai dengan versi ini, semua nama metadata harus mematuhi konvensi penamaan untuk pengidentifikasi C# .
Jika pasangan nama-nilai metadata melanggar pembatasan penamaan ini, isi respons menunjukkan nama yang bermasalah dalam elemen x-ms-invalid-name
. Fragmen XML berikut menunjukkan hal ini:
…
<Metadata>
<MyMetadata1>first value</MyMetadata1>
<MyMetadata2>second value</MyMetadata2>
<x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>
</Metadata>
…
Tag dalam respons
Elemen Tags
hanya ada jika parameter include=tags
ditentukan pada URI, dan jika ada tag pada blob. Dalam elemen TagSet
, hingga 10 elemen Tag
dikembalikan, masing-masing berisi key
dan value
tag indeks blob yang ditentukan pengguna. Urutan tag tidak dijamin dalam respons.
Elemen Tags
dan TagCount
tidak dikembalikan jika tidak ada tag pada blob.
Layanan penyimpanan mempertahankan konsistensi yang kuat antara blob dan tagnya, tetapi indeks sekunder akhirnya konsisten. Tag dapat terlihat dalam respons terhadap List Blobs
sebelum terlihat oleh operasi Find Blobs by Tags
.
Rekam jepret dalam respons
Rekam jepret tercantum dalam respons hanya jika parameter include=snapshots
ditentukan pada URI. Rekam jepret yang tercantum dalam respons tidak menyertakan elemen LeaseStatus
, karena rekam jepret tidak dapat memiliki sewa aktif.
Dengan menggunakan layanan versi 2021-06-08 ke atas, Anda dapat memanggil List Blobs
dengan pemisah dan menyertakan rekam jepret dalam enumerasi. Untuk versi layanan sebelum 2021-06-08, permintaan yang menyertakan keduanya mengembalikan kesalahan InvalidQueryParameter (kode status HTTP 400 – Permintaan Buruk).
Blob yang tidak dikomit dalam respons
Blob yang tidak dikomit tercantum dalam respons hanya jika parameter include=uncommittedblobs
ditentukan pada URI. Blob yang tidak dikomit yang tercantum dalam respons tidak menyertakan salah satu elemen berikut:
Last-Modified
Etag
Content-Type
Content-Encoding
Content-Language
Content-MD5
Cache-Control
Metadata
Blob yang dihapus dalam respons
Blob yang dihapus tercantum dalam respons hanya jika parameter include=deleted
ditentukan pada URI. Blob yang dihapus yang tercantum dalam respons tidak menyertakan elemen Sewa
Rekam jepret yang dihapus disertakan dalam respons daftar jika include=deleted,snapshot
ditentukan pada URI.
Metadata replikasi objek dalam respons
Elemen OrMetadata
ada ketika kebijakan replikasi objek telah dievaluasi pada blob, dan panggilan List Blobs
dilakukan dengan menggunakan versi 2019-12-12 atau yang lebih baru. Dalam elemen OrMetadata
, nilai setiap pasangan nama-nilai tercantum dalam elemen yang sesuai dengan nama pasangan. Format nama adalah or-{policy-id}_{rule-id}
, di mana {policy-id}
adalah GUID yang mewakili pengidentifikasi kebijakan replikasi objek pada akun penyimpanan.
{rule-id}
adalah GUID yang mewakili pengidentifikasi aturan pada kontainer penyimpanan. Nilai yang valid complete
atau failed
.
…
<OrMetadata>
<or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>complete</or-e524bba7-4323-4b93-91f8-d09d5d0b7057_d86c51de-ef02-4264-bdcf-dcd389a6c7ac>
<or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>failed</or-2b302b5d-fcd5-44d6-a5ed-455bf27e17ea_4a398ff5-2a89-4090-879b-10248f23428e>
</OrMetadata>
…
Kebijakan imutabilitas dalam respons
Elemen ImmutabilityPolicyUntilDate
dan ImmutabilityPolicyMode
hanya ada jika parameter include=immutabilitypolicy
ditentukan pada URI.
<Properties>
<ImmutabilityPolicyUntilDate>date-time-value</ImmutabilityPolicyUntilDate>
<ImmutabilityPolicyMode>unlocked | locked </ImmutabilityPolicyMode>
</Properties>
Penahanan legal dalam respons
Elemen LegalHold
hanya ada jika parameter include=legalhold
ditentukan pada URI.
<Properties>
<LegalHold>true | false </LegalHold>
</Properties>
Mengembalikan tataan hasil dengan menggunakan nilai penanda
Jika Anda menentukan nilai untuk parameter maxresults
, dan jumlah blob yang akan dikembalikan melebihi nilai ini, atau melebihi nilai default untuk maxresults
, isi respons berisi elemen NextMarker
. Elemen ini menunjukkan blob berikutnya untuk kembali pada permintaan berikutnya. Dalam kasus tertentu, layanan mungkin mengembalikan elemen NextMarker
meskipun jumlah hasil yang dikembalikan kurang dari nilai maxresults
.
Untuk mengembalikan kumpulan item berikutnya, tentukan nilai NextMarker
sebagai parameter penanda pada URI untuk permintaan berikutnya. Perhatikan bahwa nilai NextMarker
harus diperlakukan sebagai buram.
Menggunakan pemisah untuk melintasi namespace blob
Parameter delimiter
memungkinkan pemanggil untuk melintasi namespace blob dengan menggunakan pemisah yang dikonfigurasi pengguna. Dengan cara ini, Anda dapat melintasi hierarki virtual blob seolah-olah itu adalah sistem file. Pemisah dapat berupa satu karakter atau string.
Ketika permintaan menyertakan parameter ini, operasi mengembalikan elemen BlobPrefix
. Elemen BlobPrefix
dikembalikan sebagai pengganti semua blob dengan nama yang dimulai dengan substring yang sama, hingga tampilan karakter pemisah. Nilai elemen
Anda dapat menggunakan nilai BlobPrefix
untuk melakukan panggilan berikutnya untuk mencantumkan blob yang dimulai dengan awalan ini. Anda melakukan ini dengan menentukan nilai BlobPrefix
untuk parameter prefix
pada URI permintaan.
Perhatikan bahwa setiap elemen BlobPrefix
yang dikembalikan dihitung ke hasil maksimum, seperti yang dilakukan setiap elemen Blob
.
Blob tercantum dalam urutan alfabet dalam isi respons, dengan huruf besar tercantum terlebih dahulu.
Kesalahan salin dalam Deskripsi Status Salin
CopyStatusDescription
berisi informasi selengkapnya tentang kegagalan Copy Blob
.
Ketika upaya salin gagal,
CopyStatus
diatur kepending
jika Blob Storage masih mencoba kembali operasi. TeksCopyStatusDescription
menjelaskan kegagalan yang mungkin terjadi selama upaya salin terakhir.Saat
CopyStatus
diatur kefailed
, teksCopyStatusDescription
menjelaskan kesalahan yang menyebabkan operasi penyalinan gagal.
Tabel berikut ini menjelaskan bidang dari setiap nilai CopyStatusDescription
.
Tabel berikut ini menjelaskan nilai CopyStatus
dan CopyStatusDescription
skenario kegagalan umum.
Penting
Teks deskripsi yang ditampilkan di sini dapat berubah tanpa peringatan, bahkan tanpa perubahan versi. Jangan mengandalkan pencocokan teks yang tepat ini.
Skenario | Salin nilai Status | Salin nilai Deskripsi Status |
---|---|---|
Operasi salin berhasil diselesaikan. | keberhasilan | kosong |
Pengguna membatalkan operasi salin sebelum selesai. | Dibatalkan | kosong |
Kegagalan terjadi saat membaca dari blob sumber selama operasi salin. Operasi akan dicoba kembali. | Tertunda | 502 BadGateway "Mengalami kesalahan yang dapat diulang saat membaca sumbernya. Akan mencoba lagi. Waktu kegagalan: <waktu>" |
Kegagalan terjadi saat menulis ke blob tujuan operasi salin. Operasi akan dicoba kembali. | Tertunda | 500 InternalServerError "Mengalami kesalahan yang dapat diulang. Akan mencoba lagi. Waktu kegagalan: <waktu>" |
Kegagalan yang tidak dapat dipulihkan terjadi ketika membaca dari blob sumber operasi salin. | Gagal | 404 ResourceNotFound "Salin gagal saat membaca sumber." Ketika layanan melaporkan kesalahan yang mendasar ini, layanan mengembalikan ResourceNotFound di elemen><ErrorCode. Jika tidak ada elemen <ErrorCode> yang muncul dalam respons, representasi string standar dari status HTTP, seperti NotFound , muncul. |
Periode batas waktu yang membatasi semua operasi penyalinan berlalu. (Saat ini periode batas waktu adalah dua minggu.) | Gagal | 500 OperationCancelled "Salinan melebihi waktu maksimum yang diizinkan." |
Operasi salin gagal terlalu sering ketika membaca dari sumber, dan tidak memenuhi rasio minimum upaya untuk berhasil. (Batas waktu ini mencegah mencoba kembali sumber yang sangat buruk selama dua minggu sebelum gagal). | Gagal | 500 OperationCancelled "Salinan gagal saat membaca sumber." |
Penagihan
Permintaan harga dapat berasal dari klien yang menggunakan API Blob Storage, baik secara langsung melalui BLob Storage REST API, atau dari pustaka klien Azure Storage. Permintaan ini mengumpulkan biaya per transaksi. Jenis transaksi memengaruhi bagaimana akun ditagih. Misalnya, transaksi baca bertambah ke kategori penagihan yang berbeda dari transaksi tulis. Tabel berikut ini memperlihatkan kategori penagihan untuk permintaan List Blobs
berdasarkan jenis akun penyimpanan:
Operasi | Jenis akun penyimpanan | Kategori penagihan |
---|---|---|
Cantumkan Blob | Blob blok premium Tujuan umum standar v2 Tujuan umum standar v1 |
Mencantumkan dan Membuat operasi Kontainer |
Untuk mempelajari tentang harga untuk kategori penagihan yang ditentukan, lihat Harga Azure Blob Storage.
Lihat juga
status dan kode kesalahan
kode kesalahan Blob Storage