Daftar Kontainer

Operasi mengembalikan List Containers daftar kontainer di bawah akun penyimpanan yang ditentukan.

Minta

Permintaan List Containers dapat dibuat sebagai berikut. HTTPS disarankan. Ganti myaccount dengan nama akun penyimpanan Anda:

Metode Meminta URI Versi HTTP
GET https://myaccount.blob.core.windows.net/?comp=list HTTP/1.1

Perhatikan bahwa URI harus selalu menyertakan garis miring (/) untuk memisahkan nama host dari jalur dan bagian kueri URI. Dalam kasus List Containers operasi, bagian jalur URI kosong.

Permintaan Layanan Storage yang Ditimulasi

Saat membuat permintaan terhadap layanan penyimpanan yang ditimulasi, tentukan nama host emulator dan port layanan Blob sebagai 127.0.0.1:10000, diikuti dengan nama akun penyimpanan yang ditimulasikan:

Metode Meminta URI Versi HTTP
GET http://127.0.0.1:10000/devstoreaccount1?comp=list HTTP/1.1

Perhatikan bahwa penyimpanan yang ditimulasi hanya mendukung ukuran blob hingga 2 GiB.

Untuk informasi selengkapnya, lihat Menggunakan emulator Azure Storage untuk Pengembangan dan Pengujian dan Perbedaan Antara Emulator Storage dan Layanan Azure Storage.

Parameter URI

Parameter tambahan berikut dapat ditentukan pada URI permintaan.

Parameter Deskripsi
prefix Opsional. Memfilter hasil untuk mengembalikan hanya kontainer yang namanya dimulai dengan awalan yang ditentukan.
marker Opsional. Nilai string yang mengidentifikasi bagian dari daftar kontainer yang akan dikembalikan dengan operasi daftar berikutnya. Operasi mengembalikan NextMarker nilai dalam isi respons jika operasi daftar tidak mengembalikan semua kontainer yang tersisa untuk dicantumkan dengan halaman saat ini. Nilai NextMarker dapat digunakan sebagai nilai untuk marker parameter dalam panggilan berikutnya untuk meminta halaman item daftar berikutnya.

Nilai penanda buram untuk klien.
maxresults Opsional. Menentukan jumlah maksimum kontainer yang akan dikembalikan. Jika permintaan tidak menentukan maxresults, atau menentukan nilai yang lebih besar dari 5000, server akan mengembalikan hingga 5000 item.

Perhatikan bahwa jika operasi daftar melewati batas partisi, maka layanan akan mengembalikan token kelanjutan untuk mengambil sisa hasil. Untuk alasan ini, ada kemungkinan bahwa layanan akan mengembalikan lebih sedikit hasil daripada yang ditentukan oleh maxresults, atau daripada default 5000.

Jika parameter diatur ke nilai yang kurang dari atau sama dengan nol, server mengembalikan kode status 400 (Permintaan Buruk).
include={metadata,deleted,system} Opsional. Menentukan satu atau beberapa himpunan data untuk disertakan dalam respons:

-metadata: Perhatikan bahwa metadata yang diminta dengan parameter ini harus disimpan sesuai dengan pembatasan penamaan yang diberlakukan oleh blob service versi 2009-09-19. Dimulai dengan versi ini, semua nama metadata harus mematuhi konvensi penamaan untuk pengidentifikasi C#.
-deleted: Versi 2019-12-12 dan yang lebih baru. Menentukan bahwa kontainer yang dihapus sementara harus disertakan dalam respons.
-system: Versi 2020-10-02 atau yang lebih baru. Menentukan apakah kontainer sistem akan disertakan dalam respons. Termasuk opsi ini akan mencantumkan kontainer sistem seperti $logs dan $changefeed. Perhatikan bahwa kontainer sistem tertentu yang dikembalikan akan bervariasi berdasarkan fitur layanan mana yang diaktifkan pada akun penyimpanan.
timeout Opsional. Parameter timeout dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur Batas Waktu untuk Operasi Blob Service.

Judul Permintaan

Tabel berikut ini menjelaskan header permintaan yang diperlukan dan opsional.

Header Permintaan 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 yang diotorisasi. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
x-ms-client-request-id Opsional. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 KiB yang dicatat dalam log analitik saat pengelogan analitik penyimpanan diaktifkan. Menggunakan header ini sangat direkomendasikan untuk mengkorelasi aktivitas sisi klien dengan permintaan yang diterima oleh server. Untuk informasi selengkapnya, lihat Tentang Pengelogan Storage Analytics dan Pengelogan Azure: Menggunakan Log untuk Melacak Permintaan Storage.

Isi Permintaan

Tidak ada.

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 mencakup header HTTP standar tambahan. Semua header standar sesuai dengan spesifikasi protokol HTTP/1.1.

Header respons Deskripsi
Content-Type Header HTTP/1.1 standar. Menentukan format di mana hasil dikembalikan. Saat ini, nilai ini adalah aplikasi/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 layanan Blob yang digunakan untuk menjalankan permintaan. Header ini dikembalikan untuk permintaan yang dibuat terhadap versi 2009-09-19 ke atas.
Date Nilai tanggal/waktu UTC yang dihasilkan oleh layanan yang menunjukkan waktu di mana respons dimulai.
x-ms-client-request-id Header ini dapat digunakan untuk memecahkan masalah permintaan dan respons yang sesuai. Nilai header ini sama dengan nilai x-ms-client-request-id header jika ada dalam permintaan dan 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 isi respons adalah sebagai berikut.

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net">  
  <Prefix>string-value</Prefix>  
  <Marker>string-value</Marker>  
  <MaxResults>int-value</MaxResults>  
  <Containers>  
    <Container>  
      <Name>container-name</Name>  
      <Version>container-version</Version>
      <Deleted>true</Deleted>
      <Properties>  
        <Last-Modified>date/time-value</Last-Modified>  
        <Etag>etag</Etag>  
        <LeaseStatus>locked | unlocked</LeaseStatus>  
        <LeaseState>available | leased | expired | breaking | broken</LeaseState>  
        <LeaseDuration>infinite | fixed</LeaseDuration> 
        <PublicAccess>container | blob</PublicAccess>
        <HasImmutabilityPolicy>true | false</HasImmutabilityPolicy>
        <HasLegalHold>true | false</HasLegalHold>
        <DeletedTime>datetime</DeletedTime>
        <RemainingRetentionDays>no-of-days</RemainingRetentionDays>
      </Properties>  
      <Metadata>  
        <metadata-name>value</metadata-name>  
      </Metadata>  
    </Container>  
  </Containers>  
  <NextMarker>marker-value</NextMarker>  
</EnumerationResults>  

LeaseStatus, LeaseState, dan LeaseDuration hanya muncul di versi 2012-02-12 dan yang lebih baru.

Dimulai dengan versi 2013-08-15, AccountName atribut untuk EnumerationResults elemen telah diganti namanya menjadi ServiceEndpoint. Elemen URL juga telah dihapus dari Container elemen . Untuk versi sebelum 2013-08-15, URL kontainer, seperti yang ditentukan oleh URL bidang , tidak menyertakan restype=container parameter . Jika Anda menggunakan nilai ini untuk membuat permintaan berikutnya terhadap kontainer yang dijumlahkan, pastikan untuk menambahkan parameter ini untuk menunjukkan bahwa jenis sumber daya adalah kontainer.

Elemen Prefix, Marker, dan MaxResults hanya ada jika ditentukan pada URI. Elemen NextMarker memiliki nilai hanya jika hasil daftar tidak selesai.

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.

Jika pasangan nama-nilai metadata melanggar pembatasan penamaan yang diberlakukan oleh versi 2009-09-19, isi respons menunjukkan nama yang bermasalah dalam elemen, seperti yang x-ms-invalid-name ditunjukkan dalam fragmen XML berikut:

  
<Metadata>  
  <MyMetadata1>first value</MyMetadata1>  
  <MyMetadata2>second value</MyMetadata2>  
  <x-ms-invalid-name>invalid-metadata-name</x-ms-invalid-name>  
</Metadata>  
  

Dimulai dengan versi 2016-05-31, izin publik kontainer akan disediakan di properti PublicAccess. Ini menunjukkan apakah data dalam kontainer dapat diakses secara publik dan tingkat akses. Nilai yang mungkin termasuk:

  • kontainer: Menunjukkan akses baca publik penuh untuk data kontainer dan blob. Klien dapat menghitung blob dalam kontainer berdasarkan permintaan anonim, tetapi tidak dapat menghitung kontainer dalam akun penyimpanan.
  • blob: Menunjukkan akses baca publik untuk blob. Data blob dalam kontainer ini dapat dibaca melalui permintaan anonim, tetapi data kontainer tidak tersedia. Klien tidak dapat menghitung blob dalam kontainer melalui permintaan anonim.

Jika properti ini tidak ditentukan di bagian <properties> , kontainer bersifat privat bagi pemilik akun.

HasImmutabilityPolicy dan HasLegalHold hanya muncul di versi 2017-11-09 dan yang lebih baru. HasImmutabilityPolicy adalah true jika kontainer memiliki kebijakan kekekalan yang ditetapkan di dalamnya, false jika tidak. HasLegalHold adalah true jika kontainer memiliki satu atau beberapa penahanan legal di dalamnya, false jika tidak.

Catatan

Dimulai dengan versi 2009-09-19, isi respons untuk List Containers mengembalikan waktu modifikasi terakhir kontainer dalam elemen bernama Last-Modified. Dalam versi sebelumnya, elemen ini diberi nama LastModified.

Elemen Version, , DeletedTimeDeleted, dan RemainingRetentiondays hanya muncul dalam versi 2019-12-12 dan yang lebih baru jika deleted nilai ditentukan untuk parameter include kueri dan kontainer dihapus sementara dan memenuhi syarat untuk dipulihkan.

Authorization

Hanya pemilik akun yang dapat memanggil operasi ini.

Keterangan

Jika Anda menentukan nilai untuk maxresults parameter dan jumlah kontainer yang akan dikembalikan melebihi nilai ini, atau melebihi nilai default untuk maxresults, isi respons akan berisi NextMarker elemen (juga disebut sebagai token kelanjutan). NextMarker menunjukkan kontainer berikutnya untuk kembali pada permintaan berikutnya. Untuk mengembalikan kumpulan item berikutnya, tentukan nilai NextMarker untuk marker parameter pada URI untuk permintaan berikutnya. Perhatikan bahwa nilai NextMarker harus diperlakukan sebagai buram.

Jika operasi daftar melewati batas partisi, maka layanan akan mengembalikan nilai untuk NextMarker elemen untuk mengambil sisa hasil dari partisi berikutnya. Operasi daftar yang mencakup lebih dari satu partisi menghasilkan sekumpulan item yang lebih kecil yang dikembalikan daripada yang ditentukan oleh maxresults, atau daripada default 5000. Aplikasi Anda harus selalu memeriksa keberadaan NextMarker elemen saat Anda melakukan operasi daftar, dan menanganinya dengan sesuai.

Kontainer tercantum dalam urutan alfabet dalam isi respons.

Waktu List Containers operasi habis setelah 30 detik.

Permintaan dan Respons Sampel

Sampel URI berikut meminta daftar kontainer untuk akun, mengatur hasil maksimum yang akan dikembalikan untuk operasi awal ke 3.

GET https://myaccount.blob.core.windows.net/?comp=list&maxresults=3 HTTP/1.1  

Permintaan dikirim dengan header ini:

x-ms-version: 2016-05-31  
x-ms-date: Wed, 26 Oct 2016 22:08:44 GMT  
Authorization: SharedKey myaccount:CY1OP3O3jGFpYFbTCBimLn0Xov0vt0khH/D5Gy0fXvg=  

Kode status dan header respons dikembalikan sebagai berikut:

HTTP/1.1 200 OK  
Transfer-Encoding: chunked  
Content-Type: application/xml  
Date: Wed, 26 Oct 2016 22:08:54 GMT  
x-ms-version: 2016-05-31  
Server: Windows-Azure-Blob/1.0 Microsoft-HTTPAPI/2.0  
  

XML respons untuk permintaan ini adalah sebagai berikut. Perhatikan bahwa NextMarker elemen mengikuti set kontainer dan menyertakan nama kontainer berikutnya yang akan dikembalikan.

<?xml version="1.0" encoding="utf-8"?>  
<EnumerationResults ServiceEndpoint="https://myaccount.blob.core.windows.net/">  
  <MaxResults>3</MaxResults>  
  <Containers>  
    <Container>  
      <Name>audio</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C6B1B2</Etag> 
        <PublicAccess>container</PublicAccess> 
      </Properties>  
    </Container>  
    <Container>  
      <Name>images</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7C1EEEC</Etag>  
      </Properties>  
    </Container>  
    <Container>  
      <Name>textfiles</Name>  
      <Properties>  
        <Last-Modified>Wed, 26 Oct 2016 20:39:39 GMT</Last-Modified>  
        <Etag>0x8CACB9BD7BACAC3</Etag>  
      </Properties>  
    </Container>  
  </Containers>  
  <NextMarker>video</NextMarker>  
</EnumerationResults>  

Operasi daftar berikutnya menentukan penanda pada URI permintaan, sebagai berikut. Kumpulan hasil berikutnya dikembalikan dimulai dengan kontainer yang ditentukan oleh penanda.

https://myaccount.blob.core.windows.net/?comp=list&maxresults=3&marker=video  

Lihat juga

Mengotorisasi permintaan ke Azure Storage
Kode Status dan Kesalahan
Kode Kesalahan Layanan Blob
Menghitung Sumber Daya Blob
Menggunakan emulator Azure Storage untuk Pengembangan dan Pengujian
Mengatur Batas Waktu untuk Operasi Blob Service