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 Create 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 Range x-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 |
Pilihan. 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.
Penting
Microsoft merekomendasikan penggunaan Microsoft Entra ID dengan identitas terkelola untuk mengotorisasi permintaan ke Azure Storage. Microsoft Entra ID memberikan keamanan yang unggul dan kemudahan penggunaan dibandingkan dengan otorisasi Kunci Bersama.
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, identitas terkelola, atau perwakilan layanan Microsoft Entra untuk memanggil Get Page Ranges
operasi, 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
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