Dapatkan Rentang Halaman

Operasi Dapatkan Rentang Halaman mengembalikan daftar rentang halaman yang valid untuk blob halaman atau rekam jepret blob halaman.

Minta

Permintaan Dapatkan Rentang Halaman dapat dibuat sebagai berikut. Kami menyarankan agar Anda menggunakan HTTPS. Ganti myaccount dengan nama akun penyimpanan Anda:

URI permintaan metode GET Versi HTTP
https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=pagelist

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=pagelist&snapshot=<DateTime>

https://myaccount.blob.core.windows.net/mycontainer/myblob?comp=pagelist&snapshot=<DateTime>&prevsnapshot=<DateTime>
HTTP/1.1

URI layanan penyimpanan yang ditimulasikan

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 ditimulasikan:

URI permintaan metode GET Versi HTTP
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=pagelist HTTP/1.1

Untuk informasi selengkapnya, lihat Menggunakan Azure Storage Emulator untuk pengembangan dan pengujian.

Parameter URI

Parameter tambahan berikut dapat ditentukan pada URI permintaan:

Parameter Deskripsi
marker Opsional, versi 2020-10-02 dan yang lebih baru. Mengidentifikasi bagian rentang yang akan dikembalikan dengan operasi GetPageRanges berikutnya. Operasi mengembalikan nilai penanda dalam isi respons jika rentang yang dikembalikan tidak lengkap. Nilai penanda kemudian dapat digunakan dalam panggilan berikutnya untuk meminta serangkaian rentang berikutnya.

Nilai penanda buram untuk klien.
maxresults Opsional, versi 2020-10-02 dan yang lebih baru. Menentukan jumlah maksimum rentang halaman yang akan dikembalikan. Jika permintaan menentukan nilai yang lebih besar dari 10.000, server mengembalikan hingga 10.000 item. Jika ada hasil tambahan untuk dikembalikan, layanan mengembalikan token kelanjutan di elemen respons NextMarker.

Pengaturan maxresults ke nilai yang kurang dari atau sama dengan nol menghasilkan kode respons kesalahan 400 (Permintaan Buruk).
snapshot Pilihan. Nilai DateTime buram yang, saat ada, menentukan rekam jepret blob untuk mengambil informasi. Untuk informasi selengkapnya tentang bekerja dengan rekam jepret blob, lihat Membuat rekam jepret blob.
timeout Pilihan. Dinyatakan dalam hitung detik. Untuk informasi selengkapnya, lihat Mengatur batas waktu untuk operasi Blob Storage.
prevsnapshot Opsional, versi 2015-07-08 dan yang lebih baru. Nilai DateTime yang menentukan bahwa respons hanya akan berisi halaman yang diubah antara blob target dan rekam jepret sebelumnya. Halaman yang diubah mencakup halaman yang diperbarui dan dihapus. Blob target mungkin rekam jepret, selama rekam jepret yang ditentukan adalah prevsnapshot yang lebih lama dari keduanya.

Catatan: Rekam jepret inkremental saat ini hanya didukung untuk blob yang dibuat pada atau setelah 1 Januari 2016.

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, opsional untuk permintaan anonim. Menentukan versi operasi yang akan digunakan untuk permintaan ini. Untuk informasi selengkapnya, lihat Penerapan versi untuk layanan Azure Storage.
Range Opsional. Menentukan rentang byte untuk mencantumkan rentang, secara inklusif. Jika Range dihilangkan, semua rentang untuk blob dikembalikan.
x-ms-range Pilihan. Menentukan rentang byte untuk mencantumkan rentang, secara inklusif. Jika dan Rangex-ms-range ditentukan, layanan menggunakan nilai x-ms-range. Lihat Menentukan header rentang untuk operasi Blob Storage untuk informasi selengkapnya.
x-ms-lease-id:<ID> Pilihan. Jika header ini ditentukan, operasi dilakukan hanya jika kedua kondisi berikut terpenuhi:

- Sewa blob saat ini aktif.

- ID sewa yang ditentukan dalam permintaan cocok dengan ID sewa blob.

Jika header ini ditentukan dan salah satu kondisi tidak terpenuhi, permintaan gagal dan operasi gagal dengan kode status 412 (Prasyarat Gagal).
x-ms-previous-snapshot-url Opsional, versi 2019-07-07 dan yang lebih baru. previous-snapshot-url menentukan bahwa respons hanya akan berisi halaman yang diubah antara blob target dan rekam jepret yang terletak di URI yang ditentukan. Halaman yang diubah mencakup halaman yang diperbarui dan dihapus. Blob target mungkin rekam jepret, selama rekam jepret yang ditentukan oleh header ini adalah yang lebih lama dari keduanya.

Catatan: Rekam jepret inkremental saat ini hanya didukung untuk blob yang dibuat pada atau setelah 1 Januari 2016, dan header ini hanya boleh digunakan dalam skenario disk terkelola. Jika tidak, gunakan prevsnapshot parameter .
x-ms-client-request-id Opsional. Menyediakan nilai buram yang dihasilkan klien dengan batas karakter 1 kibibyte (KiB), yang dicatat dalam log analitik saat pengelogan Azure Storage Analytics diaktifkan. Kami sangat menyarankan Anda menggunakan header ini saat Anda menghubungkan 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 Azure Storage.

Operasi ini juga mendukung penggunaan header bersyarah untuk mendapatkan rentang halaman hanya jika kondisi tertentu terpenuhi. Untuk informasi selengkapnya, lihat Menentukan header kondisional untuk operasi Blob Storage.

Isi permintaan

Tidak ada.

Respons

Respons mencakup kode status HTTP, sekumpulan header respons, dan isi respons.

Kode status

Operasi yang berhasil mengembalikan kode status 200 (OK).

Untuk informasi selengkapnya tentang kode status, lihat Kode status dan 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.

Sintaks Deskripsi
Last-Modified Tanggal/waktu blob terakhir diubah. Format tanggal mengikuti RFC 1123.

Setiap operasi yang memodifikasi blob, termasuk pembaruan metadata atau properti blob, mengubah waktu modifikasi terakhir blob.
ETag Berisi nilai yang dapat digunakan klien untuk melakukan operasi secara kondisional. Jika versi permintaan adalah 2011-08-18 atau yang lebih baru, nilai ETag diapit dalam tanda kutip.
x-ms-blob-content-length Ukuran blob dalam byte.
x-ms-request-id Secara unik mengidentifikasi permintaan yang dibuat, dan dapat digunakan untuk memecahkan masalah permintaan. Untuk informasi selengkapnya, lihat Memecahkan masalah operasi API.
x-ms-version Menunjukkan versi Blob Storage yang digunakan untuk menjalankan permintaan. Header ini dikembalikan untuk permintaan yang dibuat terhadap versi 2009-09-19 dan yang lebih baru.

Header ini juga dikembalikan untuk permintaan anonim tanpa versi tertentu jika kontainer ditandai untuk akses publik dengan menggunakan Blob Storage versi 2009-09-19.
Date Nilai tanggal/waktu UTC yang dihasilkan oleh layanan, yang menunjukkan waktu saat respons dimulai.
x-ms-client-request-id 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 berisi tidak lebih dari 1.024 karakter ASCII yang terlihat. x-ms-client-request-id Jika header tidak ada dalam permintaan, header tidak akan ada dalam respons.

Isi Respons

Isi respons menyertakan daftar rentang halaman yang tidak tumpang tindih dan valid, diurutkan berdasarkan peningkatan rentang halaman alamat. Format isi respons adalah sebagai berikut:

<?xml version="1.0" encoding="utf-8"?>  
<PageList>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>  
</PageList>  

Jika seluruh set halaman blob telah dibersihkan, isi respons tidak menyertakan rentang halaman apa pun.

prevsnapshot Jika parameter ditentukan, respons hanya menyertakan halaman yang berbeda antara rekam jepret atau blob target dan rekam jepret sebelumnya. Halaman yang dikembalikan mencakup kedua halaman yang diperbarui atau dibersihkan. Format isi respons ini adalah sebagai berikut:

<?xml version="1.0" encoding="utf-8"?>  
<PageList>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>  
   <ClearRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </ClearRange>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>  
</PageList>  
  

Jika seluruh set halaman blob telah dibersihkan dan prevsnapshot parameter tidak ditentukan, isi respons tidak menyertakan rentang halaman apa pun.

maxresults Jika parameter ditentukan, respons hanya menyertakan jumlah rentang yang ditentukan dengan token kelanjutan dalam NextMarker tag. Token kelanjutan kosong jika tidak ada lagi rentang yang tertunda, atau berisi nilai buram yang perlu dikirim sebagai marker parameter dalam permintaan berikutnya. Format isi respons ini adalah sebagai berikut:

<?xml version="1.0" encoding="utf-8"?>  
<PageList>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>  
   <ClearRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </ClearRange>  
   <PageRange>  
      <Start>Start Byte</Start>  
      <End>End Byte</End>  
   </PageRange>
   <NextMarker/>
</PageList>  
  

Authorization

Otorisasi diperlukan saat memanggil operasi akses data apa pun di Azure Storage. Anda dapat mengotorisasi operasi seperti yang Get Page Ranges 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. Perwakilan keamanan mungkin pengguna, grup, perwakilan layanan aplikasi, atau identitas terkelola Azure. Perwakilan 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 untuk pengguna, grup, atau perwakilan layanan yang Microsoft Entra untuk memanggil Get Page Ranges operasi, dan peran Azure RBAC bawaan yang 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

Offset byte awal dan akhir untuk setiap rentang halaman bersifat inklusif.

Dalam blob halaman yang sangat terfragmentasi dengan sejumlah besar penulisan, Get Page Ranges permintaan dapat gagal karena waktu server internal habis. Aplikasi yang mengambil rentang blob halaman dengan sejumlah besar operasi tulis harus mengambil subset rentang halaman pada satu waktu.

Pada versi 2015-07-08, Anda dapat memanggil Get Page Ranges dengan prevsnapshot parameter untuk mengembalikan halaman yang berbeda antara blob dasar dan rekam jepret, atau di antara dua rekam jepret blob. Dengan menggunakan perbedaan halaman ini, Anda dapat menyimpan rekam jepret bertambah bertahap dari blob halaman. Rekam jepret inkremental adalah cara hemat biaya untuk mencadangkan disk komputer virtual jika Anda ingin menerapkan solusi pencadangan Anda sendiri.

Memanggil Get Page Ranges dengan prevsnapshot parameter mengembalikan halaman yang telah diperbarui atau dibersihkan sejak rekam jepret yang ditentukan oleh prevsnapshot diambil. Anda kemudian dapat menyalin halaman yang dikembalikan ke blob halaman cadangan di akun penyimpanan lain dengan menggunakan Letakkan Halaman.

Pada versi 2019-07-07, Anda dapat menggunakan x-ms-previous-snapshot-url header untuk menentukan rekam jepret di akun disk terkelola untuk rekam jepret inkremental. Jika Anda tidak menggunakan disk terkelola, gunakan prevsnapshot parameter kueri.

Operasi tertentu pada blob menyebabkan Get Page Ranges gagal ketika dipanggil untuk mengembalikan rekam jepret inkremental. Get Pages Ranges gagal dengan kode kesalahan 409 (Konflik) jika dipanggil pada blob yang merupakan target permintaan Put Blob atau Copy Blob setelah rekam jepret yang ditentukan oleh prevsnapshot diambil. Jika target Get Page Ranges operasi itu sendiri adalah rekam jepret, panggilan berhasil selama rekam jepret yang ditentukan oleh prevsnapshot lebih lama, dan tidak ada Put Blob atau Copy Blob operasi yang dipanggil dalam interval antara dua rekam jepret.

Catatan

Rekam jepret inkremental saat ini hanya didukung untuk blob yang dibuat pada atau setelah 1 Januari 2016. Upaya untuk menggunakan fitur ini pada blob yang lebih lama akan mengakibatkan BlobOverwritten kesalahan, yaitu kode kesalahan HTTP 409 (Konflik).

Lihat juga

Mengotorisasi permintaan ke Azure Storage
Status dan kode galat
Mengatur batas waktu untuk operasi Blob Storage