Daftar Blob

Operasi List Blobs mengembalikan daftar blob di bawah kontainer yang ditentukan.

Minta

Anda dapat membuat List Blobs permintaan 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 Opsional. 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 folder1/folder2/readme/readmefile.txtawalan . Kesalahan akan muncul jika subfolder berisi file bernama readme.
delimiter Pilihan. Ketika permintaan menyertakan parameter ini, operasi mengembalikan BlobPrefix elemen 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 menjadi karakter tunggal atau string.
marker Pilihan. 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 Pilihan. Menentukan jumlah maksimum blob yang akan dikembalikan, termasuk semua BlobPrefix elemen. 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 NextMarker elemen respons. Dalam kasus tertentu, layanan mungkin mengembalikan lebih sedikit hasil daripada yang ditentukan oleh maxresults, dan juga mengembalikan token kelanjutan.

Pengaturan 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}
Pilihan. Menentukan satu atau beberapa himpunan data untuk disertakan dalam respons:

- snapshots: Menentukan bahwa rekam jepret harus disertakan dalam enumerasi. Rekam jepret dicantumkan dari yang terlama hingga terbaru dalam respons.
- metadata: Menentukan bahwa metadata blob dikembalikan dalam respons.
- uncommittedblobs: Menentukan bahwa blob yang bloknya telah diunggah, tetapi yang belum dilakukan dengan menggunakan Put Block List, disertakan dalam respons.
- copy: Versi 2012-02-12 dan yang lebih baru. Menentukan bahwa metadata yang terkait dengan operasi saat ini atau sebelumnya Copy Blob 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 imutabilitas 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 hierarki 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} Pilihan. Menentukan salah satu himpunan data ini yang akan dikembalikan dalam respons:

-deleted:Opsional. Versi 2020-08-04 dan yang lebih baru. Hanya untuk akun yang diaktifkan dengan namespace hierarkis. Ketika 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 Opsional. 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.

Meminta kop Deskripsi
Authorization Wajib diisi. Menentukan skema otorisasi, nama akun, dan tanda tangan. Untuk informasi selengkapnya, lihat Mengotorisasi permintaan ke Azure Storage.
Date atau x-ms-date Wajib diisi. 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 Pilihan. 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 Pilihan. Hanya berlaku saat namespace hierarki diaktifkan untuk akun, dan include=permissions disediakan dalam permintaan. Jika true, nilai identitas pengguna yang dikembalikan di <bidang Pemilik>, <Grup>, dan <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 bersahabat yang unik.

Isi permintaan

Tidak ada.

Permintaan sampel

Lihat Menghitung sumber daya blob untuk permintaan sampel.

Respons

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.

Header respons Deskripsi
Content-Type Menentukan format di mana hasil dikembalikan. Saat ini nilai ini adalah application/xml.
x-ms-request-id Header ini secara unik mengidentifikasi permintaan yang dibuat, dan dapat digunakan untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Pemecahan masalah operasi API.
x-ms-version Menunjukkan versi Blob Storage yang digunakan untuk menjalankan permintaan. Header ini dikembalikan untuk permintaan yang dibuat dengan menggunakan versi 2009-09-19 dan yang lebih baru.

Header ini juga dikembalikan untuk permintaan anonim, tanpa versi yang ditentukan, jika kontainer ditandai untuk akses publik dengan menggunakan Blob Storage versi 2009-09-19.
Date Nilai tanggal/waktu UTC yang menunjukkan waktu di mana respons dimulai. Layanan menghasilkan nilai ini.
x-ms-client-request-id Anda dapat menggunakan header ini untuk memecahkan masalah permintaan dan respons terkait. Nilai header ini sama dengan nilai x-ms-client-request-id header, jika ada dalam permintaan. Nilainya paling banyak 1024 karakter ASCII yang terlihat. x-ms-client-request-id Jika header tidak ada dalam permintaan, header ini tidak akan ada dalam respons.

Isi Respons

Format respons XML adalah sebagai berikut.

Perhatikan bahwa Prefixelemen , 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 dikomit disertakan dalam respons hanya jika ditentukan dengan include parameter pada URI permintaan.

Dalam versi 2009-09-19 dan yang lebih baru, properti blob dienkapsulasi dalam Properties elemen .

Dimulai dengan versi 2009-09-19, List Blobs mengembalikan elemen berganti nama berikut dalam isi respons:

  • Last-Modified (sebelumnya LastModified)

  • Content-Length (sebelumnya Size)

  • Content-Type (sebelumnya ContentType)

  • Content-Encoding (sebelumnya ContentEncoding)

  • Content-Language (sebelumnya ContentLanguage)

Elemen muncul Content-MD5 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 Content-MD5 nilai 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 Content-MD5 nilai saat membuat blob, atau dengan memanggil operasi Put Block List atau Set Blob Properties .

Untuk versi dari 2009-09-19 dan yang lebih baru, tetapi sebelum versi 2015-02-21, Anda tidak dapat memanggil List Blobs 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, CopyProgressCopySource, CopyCompletionTime, dan CopyStatusDescription hanya muncul dalam versi 2012-02-12 dan yang lebih baru, ketika operasi ini menyertakan include={copy} parameter . Elemen-elemen ini tidak muncul jika blob ini belum pernah menjadi tujuan dalam Copy Blob operasi. Elemen tidak muncul jika blob ini telah dimodifikasi setelah operasi yang disimpulkan Copy Blob , dengan menggunakan Set Blob Properties, , Put Blobatau 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, EnumerationResults elemen berisi ServiceEndpoint atribut yang menentukan titik akhir blob. Elemen ini juga berisi ContainerName bidang yang menentukan nama kontainer. Dalam versi sebelumnya, kedua atribut ini digabungkan bersama-sama di ContainerName bidang . Juga dalam versi 2013-08-15 dan yang Url lebih baru, elemen 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 ServerEncrypted elemen . Elemen ini diatur ke true jika metadata blob dan aplikasi benar-benar dienkripsi, dan false sebaliknya.

Untuk versi 2016-05-31 dan yang lebih baru, List Blobs mengembalikan IncrementalCopy elemen untuk blob salinan dan rekam jepret bertahap, dengan nilai diatur ke true.

Untuk versi 2017-04-17 dan yang lebih baru, List Blobs mengembalikan AccessTier elemen 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 ArchiveStatus elemen 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 AccessTierInferred elemen 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 AccessTierChangeTime elemen 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, , DeletedDeletedTime, dan RemainingRetentionDays muncul ketika operasi ini menyertakan include={deleted} parameter . Elemen-elemen ini tidak muncul jika blob ini tidak dihapus. Elemen-elemen ini muncul untuk blob atau rekam jepret yang dihapus dengan DELETE operasi, 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 saat blob ini dibuat.

Untuk versi 2019-02-02 dan yang lebih baru, List Blobs mengembalikan CustomerProvidedKeySha256 elemen 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 include={metadata} parameter , dan ada metadata aplikasi yang ada pada blob yang dienkripsi dengan kunci yang disediakan pelanggan, Metadata elemen akan memiliki Encrypted="true" atribut . Atribut ini menunjukkan bahwa blob memiliki metadata yang tidak dapat didekripsi sebagai bagian List Blobs dari operasi. 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 EncryptionScope elemen jika blob dienkripsi dengan cakupan enkripsi. Nilai akan diatur ke nama cakupan enkripsi yang digunakan untuk mengenkripsi blob. Jika operasi menyertakan include={metadata} parameter , metadata aplikasi pada blob didekripsi secara transparan, dan tersedia dalam Metadata elemen .

Untuk versi 2019-12-12 dan yang lebih baru, List Blobs mengembalikan RehydratePriority elemen pada Blob Storage atau akun v2 tujuan umum, jika objek berada dalam rehydrate pending status . Nilai yang berlaku adalah High atau Standard.

Untuk versi 2019-12-12 dan yang lebih baru, List Blobs mengembalikan VersionId elemen 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 IsCurrentVersion elemen 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 TagCount elemen untuk blob dengan tag apa pun. Elemen Tags hanya muncul ketika operasi ini menyertakan include={tags} parameter . Elemen-elemen ini tidak muncul jika tidak ada tag pada blob.

Untuk versi 2019-12-12 dan yang lebih baru, List Blobs mengembalikan Sealed elemen untuk blob tambahan. Elemen Sealed hanya muncul ketika blob penampingan telah disegel. Elemen-elemen ini tidak muncul jika blob tambahan tidak disegel.

Untuk versi 2020-02-10 dan yang lebih baru, List Blobs mengembalikan LastAccessTime elemen . 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 API Blob Service. Elemen LastAccessTime tidak melacak terakhir kali ketika metadata blob diakses.

Untuk versi 2020-06-12 dan yang lebih baru, List Blobs mengembalikan elemen dan ImmutabilityPolicyMode , ketika operasi ini menyertakan include={immutabilitypolicy}ImmutabilityPolicyUntilDate parameter .

Untuk versi 2020-06-12 dan yang lebih baru, List Blobs mengembalikan LegalHold elemen , ketika operasi ini menyertakan include={legalhold} parameter .

Untuk versi 2020-06-12 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkan, List Blobs mengembalikan elemen , , PermissionsGroup, dan Acl .Owner Permintaan harus berisi include={permissions} parameter . Perhatikan bahwa Acl elemen adalah daftar gabungan daftar akses dan 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 Properties elemen dalam BlobPrefix elemen . Ini sesuai dengan properti pada direktori.

Untuk versi 2020-08-04 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkanDeletionId, List Blobs mengembalikan elemen 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 hierarkis ResourceType diaktifkan, List Blobs mengembalikan elemen properti untuk jalur tersebut. Ini bisa berupa file atau directory.

Untuk versi 2021-02-12 dan yang lebih baru, List Blobs akan mengodekan persen (per RFC 2396) semua BlobName atau BlobPrefixName nilai elemen. Secara khusus, ini akan melakukannya untuk nilai-nilai yang berisi karakter yang tidak valid di XML (U+FFFE atau U+FFFF). Jika dikodekan, Name elemen akan menyertakan Encoded=true atribut . Perhatikan bahwa ini hanya terjadi untuk Name nilai elemen yang berisi karakter yang tidak valid dalam XML, bukan elemen yang tersisa Name dalam respons.

Untuk versi 2021-06-08 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkanPlaceholder, List Blobs mengembalikan elemen properti. Ini mengembalikan elemen ini dalam BlobPrefix elemen 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 diaktifkanEncryptionContext, List Blobs mengembalikan elemen . Jika nilai properti konteks enkripsi diatur, nilai tersebut akan mengembalikan nilai yang ditetapkan.

Untuk versi 2020-02-10 dan yang lebih baru, untuk akun dengan namespace hierarki diaktifkanExpiry-Time, List Blobs mengembalikan elemen 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>  

Respons sampel

Lihat Menghitung sumber daya blob untuk respons sampel.

Authorization

Otorisasi diperlukan saat memanggil operasi akses data apa pun di Azure Storage. Anda dapat mengotorisasi operasi seperti yang List Blobs dijelaskan di bawah ini.

Azure Storage mendukung penggunaan Microsoft Entra ID 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 dapat berupa 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 Blob service.

Untuk mempelajari selengkapnya tentang otorisasi menggunakan Microsoft Entra ID, lihat Mengotorisasi akses ke blob menggunakan Microsoft Entra ID.

Izin

Tercantum di bawah ini adalah tindakan RBAC yang diperlukan bagi pengguna, grup, atau perwakilan layanan Microsoft Entra untuk memanggil List Blobs operasi, dan peran Azure RBAC bawaan paling tidak istimewa yang mencakup tindakan ini:

Untuk mempelajari selengkapnya tentang menetapkan peran menggunakan Azure RBAC, lihat Menetapkan peran Azure untuk akses ke data blob.

Keterangan

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 Content-Length elemen sesuai dengan nilai header blob x-ms-blob-content-length .

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 Content-MD5 properti saat blob dibuat, atau dengan memanggil Atur Properti Blob. Dalam versi 2012-02-12 dan yang lebih baru, Put Blob menetapkan nilai MD5 blob blok, bahkan ketika Put Blob permintaan tidak menyertakan header MD5.

Metadata dalam respons

Elemen Metadata hanya ada jika include=metadata parameter ditentukan pada URI. Metadata Dalam elemen , 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 x-ms-invalid-name bermasalah dalam elemen . 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 include=tags parameter ditentukan pada URI, dan jika ada tag pada blob. TagSet Dalam elemen , hingga 10 Tag elemen dikembalikan, masing-masing berisi key dan value dari 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 tag-nya, tetapi indeks sekunder pada akhirnya konsisten. Tag dapat terlihat dalam respons sebelum List Blobs terlihat oleh Find Blobs by Tags operasi.

Rekam jepret dalam respons

Rekam jepret tercantum dalam respons hanya jika include=snapshots parameter ditentukan pada URI. Rekam jepret yang tercantum dalam respons tidak menyertakan LeaseStatus elemen , 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 include=uncommittedblobs parameter 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 include=deleted parameter ditentukan pada URI. Blob yang dihapus yang tercantum dalam respons tidak menyertakan elemen Sewa , karena blob yang dihapus tidak dapat memiliki sewa aktif.

Rekam jepret yang dihapus disertakan dalam respons daftar jika include=deleted,snapshot ditentukan pada URI.

Metadata replikasi objek dalam respons

Elemen OrMetadata ini ada ketika kebijakan replikasi objek telah dievaluasi pada blob, dan List Blobs panggilan dilakukan dengan menggunakan versi 2019-12-12 atau yang lebih baru. OrMetadata Dalam elemen , 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 adalah 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 include=immutabilitypolicy parameter ditentukan pada URI.

<Properties> 
   <ImmutabilityPolicyUntilDate>date-time-value</ImmutabilityPolicyUntilDate>   
   <ImmutabilityPolicyMode>unlocked | locked </ImmutabilityPolicyMode>  
</Properties> 

Elemen LegalHold hanya ada jika include=legalhold parameter ditentukan pada URI.

<Properties> 
  <LegalHold>true | false </LegalHold>  
</Properties> 

Mengembalikan tataan hasil dengan menggunakan nilai penanda

Jika Anda menentukan nilai untuk maxresults parameter , dan jumlah blob yang akan dikembalikan melebihi nilai ini, atau melebihi nilai default untuk maxresults, isi respons berisi NextMarker elemen . Elemen ini menunjukkan blob berikutnya untuk kembali pada permintaan berikutnya. Dalam kasus tertentu, layanan mungkin mengembalikan NextMarker elemen meskipun jumlah hasil yang dikembalikan kurang dari maxresultsnilai .

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 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 BlobPrefix elemen . Elemen BlobPrefix dikembalikan sebagai pengganti semua blob dengan nama yang dimulai dengan substring yang sama, hingga penampilan karakter pemisah. Nilai BlobPrefix elemen adalah substring+pemisah, di mana substring adalah substring umum yang memulai satu atau beberapa nama blob, dan pemisah adalah nilai delimiter parameter.

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 prefix parameter pada URI permintaan.

Perhatikan bahwa setiap BlobPrefix elemen yang dikembalikan dihitung terhadap hasil maksimum, sama seperti setiap Blob elemen.

Blob tercantum dalam urutan alfabet dalam isi respons, dengan huruf besar tercantum terlebih dahulu.

Kesalahan salin dalam Deskripsi Status Salin

CopyStatusDescription berisi informasi lebih lanjut tentang kegagalan tersebut Copy Blob .

  • Ketika upaya salin gagal, CopyStatus diatur ke pending jika Blob Storage masih mencoba kembali operasi. Teks CopyStatusDescription menjelaskan kegagalan yang mungkin telah terjadi selama upaya penyalinan terakhir.

  • Ketika CopyStatus diatur ke failed, CopyStatusDescription teks menjelaskan kesalahan yang menyebabkan operasi salin gagal.

Tabel berikut ini menjelaskan bidang dari setiap CopyStatusDescription nilai.

Komponen Deskripsi
Kode status HTTP Bilangan bulat tiga digit standar yang menentukan kegagalan.
Kode kesalahan Kata kunci yang menjelaskan kesalahan. Ini disediakan oleh Azure dalam <elemen ErrorCode> . Jika tidak ada <elemen ErrorCode> yang muncul, layanan mengembalikan kata kunci yang berisi teks kesalahan standar yang terkait dengan kode status HTTP tiga digit dalam spesifikasi HTTP. Untuk informasi selengkapnya, lihat Kode kesalahan REST API umum.
Informasi Deskripsi terperinci tentang kegagalan, dalam tanda kutip.

Tabel berikut ini menjelaskan CopyStatus nilai 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. berhasil 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 akan kembali ResourceNotFound dalam <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."

Billing

Permintaan harga dapat berasal dari klien yang menggunakan API Blob Storage, baik 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, membaca transaksi bertambah ke kategori penagihan yang berbeda dari transaksi tulis. Tabel berikut ini memperlihatkan kategori penagihan untuk List Blobs permintaan berdasarkan jenis akun penyimpanan:

Operasi Jenis akun penyimpanan Kategori penagihan
Daftar Blob Objek besar biner 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 galat
Kode kesalahan Blob Storage