Sayfa Aralıklarını Alma
Sayfa Aralıklarını Al işlemi, sayfa blobu veya sayfa blobunun anlık görüntüsü için geçerli sayfa aralıklarının listesini döndürür.
İstek
Sayfa Aralıklarını Al isteği aşağıdaki gibi oluşturulabilir. HTTPS kullanmanızı öneririz. myaccount değerini depolama hesabınızın adıyla değiştirin:
GET yöntemi istek URI'si | HTTP sürümü |
---|---|
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 |
Öykünülmüş depolama hizmeti URI'si
Öykünülmüş depolama hizmetinde istekte bulunurken öykünücü ana bilgisayar adını ve Azure Blob Depolama bağlantı noktasını 127.0.0.1:10000 olarak ve ardından öykünülmüş depolama hesabı adını belirtin:
GET yöntemi istek URI'si | HTTP sürümü |
---|---|
http://127.0.0.1:10000/devstoreaccount1/mycontainer/myblob?comp=pagelist |
HTTP/1.1 |
Daha fazla bilgi için bkz. Geliştirme ve test için Azure Depolama Öykünücüsü'ni kullanma.
URI parametreleri
İstek URI'sinde aşağıdaki ek parametreler belirtilebilir:
Parametre | Açıklama |
---|---|
marker |
İsteğe bağlı, sürüm 2020-10-02 ve üzeri. Bir sonraki GetPageRanges işlemiyle döndürülecek aralıkların bölümünü tanımlar. Döndürülen aralıklar eksikse, işlem yanıt gövdesi içinde bir işaretçi değeri döndürür. İşaretçi değeri daha sonra sonraki bir çağrıda bir sonraki aralık kümesini istemek için kullanılabilir. İşaretçi değeri istemci için opaktır. |
maxresults |
İsteğe bağlı, sürüm 2020-10-02 ve üzeri. Döndürülecek en fazla sayfa aralığı sayısını belirtir. İstek 10.000'den büyük bir değer belirtirse, sunucu en çok 10.000 öğe döndürür. Döndürülecek ek sonuçlar varsa, hizmet NextMarker yanıt öğesinde bir devamlılık belirteci döndürür. Sıfırdan küçük veya sıfıra eşit bir değere ayarlanması maxresults hata yanıtı kodu 400(Hatalı İstek) ile sonuçlanır. |
snapshot |
İsteğe bağlı. Mevcut olduğunda, bilgileri alınacak blob anlık görüntüsünü belirten opak bir DateTime değeri. Blob anlık görüntüleriyle çalışma hakkında daha fazla bilgi için bkz. Blobun anlık görüntüsünü İçerik Oluşturucu. |
timeout |
İsteğe bağlı. Saniye cinsinden ifade edilir. Daha fazla bilgi için bkz. Blob Depolama işlemleri için zaman aşımlarını ayarlama. |
prevsnapshot |
İsteğe bağlı, sürüm 2015-07-08 ve üzeri. Yanıtın yalnızca hedef blob ile önceki anlık görüntü arasında değiştirilmiş sayfaları içereceğini belirten bir DateTime değeri. Değiştirilen sayfalar hem güncelleştirilmiş hem de temizlenmiş sayfaları içerir. hedef blob, tarafından prevsnapshot belirtilen anlık görüntü iki taneden eski olduğu sürece bir anlık görüntü olabilir.Not: Artımlı anlık görüntüler şu anda yalnızca 1 Ocak 2016 tarihinde veya sonrasında oluşturulmuş bloblar için desteklenmektedir. |
İstek üst bilgileri
Aşağıdaki tabloda gerekli ve isteğe bağlı istek üst bilgileri açıklanmaktadır.
İstek üst bilgisi | Açıklama |
---|---|
Authorization |
Gereklidir. Yetkilendirme düzenini, hesap adını ve imzayı belirtir. Daha fazla bilgi için bkz. Azure Depolama'ya istekleri yetkilendirme. |
Date veya x-ms-date |
Gereklidir. İstek için Eşgüdümlü Evrensel Saat (UTC) biçimini belirtir. Daha fazla bilgi için bkz. Azure Depolama'ya istekleri yetkilendirme. |
x-ms-version |
Anonim istekler için isteğe bağlı olarak tüm yetkili istekler için gereklidir. Bu istek için kullanılacak işlemin sürümünü belirtir. Daha fazla bilgi için bkz. Azure Depolama hizmetleri için sürüm oluşturma. |
Range |
İsteğe bağlı. Dahil olmak üzere, aralıkların listelendiği bayt aralığını belirtir.
Range Atlanırsa blob için tüm aralıklar döndürülür. |
x-ms-range |
İsteğe bağlı. Dahil olmak üzere, aralıkların listelendiği bayt aralığını belirtir. hem hem de Range x-ms-range belirtilirse, hizmet değerini x-ms-range kullanır. Daha fazla bilgi için bkz. Blob Depolama işlemleri için aralık üst bilgisini belirtme . |
x-ms-lease-id:<ID> |
İsteğe bağlı. Bu üst bilgi belirtilirse, işlem yalnızca aşağıdaki koşulların her ikisi de karşılandığında gerçekleştirilir: - Blob'un kirası şu anda etkin. - İstekte belirtilen kira kimliği, blobun kira kimliğiyle eşleşir. Bu üst bilgi belirtilirse ve herhangi bir koşul karşılanmazsa istek başarısız olur ve işlem 412 durum koduyla başarısız olur (Önkoşul Başarısız Oldu). |
x-ms-previous-snapshot-url |
İsteğe bağlı, sürüm 2019-07-07 ve üzeri. yanıtın previous-snapshot-url yalnızca hedef blob ile belirtilen URI'de bulunan anlık görüntü arasında değiştirilmiş sayfaları içereceğini belirtir. Değiştirilen sayfalar hem güncelleştirilmiş hem de temizlenmiş sayfaları içerir. Bu üst bilgi tarafından belirtilen anlık görüntü ikisinin eski olduğu sürece hedef blob bir anlık görüntü olabilir.Not: Artımlı anlık görüntüler şu anda yalnızca 1 Ocak 2016 veya sonrasında oluşturulmuş bloblar için desteklenmektedir ve bu üst bilgi yalnızca yönetilen disk senaryolarında kullanılmalıdır. Aksi takdirde parametresini prevsnapshot kullanın. |
x-ms-client-request-id |
İsteğe bağlı. Azure Depolama Analizi günlüğü etkinleştirildiğinde analiz günlüklerine kaydedilen, 1 kibibayt (KiB) karakter sınırına sahip istemci tarafından oluşturulan, opak bir değer sağlar. İstemci tarafı etkinlikleriyle sunucu tarafından alınan istekler arasında bağıntı kurarken bu üst bilgiyi kullanmanızı kesinlikle öneririz. Daha fazla bilgi için bkz. Depolama Analizi günlüğü ve Azure günlüğü hakkında: Azure Depolama isteklerini izlemek için günlükleri kullanma. |
Bu işlem, yalnızca belirtilen bir koşul karşılandığında sayfa aralıklarını almak için koşullu üst bilgilerin kullanımını da destekler. Daha fazla bilgi için bkz. Blob Depolama işlemleri için koşullu üst bilgileri belirtme.
İstek gövdesi
Yok.
Yanıt
Yanıt bir HTTP durum kodu, bir dizi yanıt üst bilgisi ve yanıt gövdesi içerir.
Durum kodu
Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.
Durum kodları hakkında daha fazla bilgi için bkz. Durum ve hata kodları.
Yanıt üst bilgileri
Bu işlemin yanıtı aşağıdaki üst bilgileri içerir. Yanıt ek standart HTTP üst bilgileri de içerebilir. Tüm standart üst bilgiler HTTP/1.1 protokol belirtimine uygundur.
Syntax | Description |
---|---|
Last-Modified |
Blob'un en son değiştirildiği tarih/saat. Tarih biçimi RFC 1123'e göredir. Blobun meta verilerinin veya özelliklerinin güncelleştirilmiş olması da dahil olmak üzere blobu değiştiren tüm işlemler, blobun son değiştirme zamanını değiştirir. |
ETag |
İstemcinin işlemi koşullu olarak gerçekleştirmek için kullanabileceği bir değer içerir. İstek sürümü 2011-08-18 veya üzeriyse, ETag değeri tırnak içine alınır. |
x-ms-blob-content-length |
Blobun bayt cinsinden boyutu. |
x-ms-request-id |
Yapılan isteği benzersiz olarak tanımlar ve isteğin sorunlarını gidermek için kullanılabilir. Daha fazla bilgi için bkz . API işlemleriyle ilgili sorunları giderme. |
x-ms-version |
İsteği yürütmek için kullanılan Blob Depolama sürümünü gösterir. Bu üst bilgi, 2009-09-19 ve sonraki sürümlerde yapılan istekler için döndürülür. Kapsayıcı Blob Depolama sürüm 2009-09-19 kullanılarak genel erişim için işaretlendiyse, bu üst bilgi belirtilen sürüm olmadan anonim istekler için de döndürülür. |
Date |
Hizmet tarafından oluşturulan ve yanıtın başlatıldığı saati gösteren UTC tarih/saat değeri. |
x-ms-client-request-id |
İsteklerde ve karşılık gelen yanıtlarda sorun gidermek için kullanılabilir. Bu üst bilginin değeri, istekte varsa ve değer 1.024'ten fazla görünür ASCII karakteri içermiyorsa üst bilginin değerine x-ms-client-request-id eşittir. İstekte x-ms-client-request-id üst bilgi yoksa yanıtta bulunmaz. |
Yanıt gövdesi
Yanıt gövdesi, adres sayfası aralığını artırarak sıralanmış, çakışmayan, geçerli sayfa aralıklarının listesini içerir. Yanıt gövdesinin biçimi aşağıdaki gibidir:
<?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>
Blobun tüm sayfa kümesi temizlenmişse, yanıt gövdesi herhangi bir sayfa aralığı içermez.
prevsnapshot
Parametresi belirtilmişse, yanıt yalnızca hedef anlık görüntü veya blob ile önceki anlık görüntü arasında farklılık gösteren sayfaları içerir. Döndürülen sayfalar güncelleştirilmiş veya temizlenmiş her iki sayfayı da içerir. Bu yanıt gövdesinin biçimi aşağıdaki gibidir:
<?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>
Blobun tüm sayfa kümesi temizlenmişse ve prevsnapshot
parametresi belirtilmemişse yanıt gövdesinde sayfa aralığı yoktur.
maxresults
Parametresi belirtilmişse, yanıt yalnızca etiketinde devamlılık belirteciyle NextMarker
belirtilen sayıda aralık içerir. Bekleyen başka aralık yoksa devamlılık belirteci boş olur veya bir sonraki istekte parametre olarak gönderilmesi gereken opak bir marker
değer içerir. Bu yanıt gövdesinin biçimi aşağıdaki gibidir:
<?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>
Yetkilendirme
Azure Depolama'da herhangi bir veri erişim işlemi çağrılırken yetkilendirme gereklidir. İşlemi aşağıda açıklandığı gibi yetki Get Page Ranges
verebilirsiniz.
Önemli
Microsoft, Azure Depolama'ya yönelik istekleri yetkilendirmek için yönetilen kimliklerle Microsoft Entra ID kullanılmasını önerir. Microsoft Entra ID, Paylaşılan Anahtar yetkilendirmesine kıyasla üstün güvenlik ve kullanım kolaylığı sağlar.
Azure Depolama, blob verilerine yönelik istekleri yetkilendirmek için Microsoft Entra ID kullanılmasını destekler. Microsoft Entra ID ile Azure rol tabanlı erişim denetimini (Azure RBAC) kullanarak bir güvenlik sorumlusuna izin vekleyebilirsiniz. Güvenlik sorumlusu bir kullanıcı, grup, uygulama hizmet sorumlusu veya Azure yönetilen kimliği olabilir. OAuth 2.0 belirtecini döndürmek için güvenlik sorumlusunun kimliği Microsoft Entra ID tarafından doğrulanır. Belirteç daha sonra Blob hizmetine karşı bir isteği yetkilendirmek için kullanılabilir.
Microsoft Entra ID kullanarak yetkilendirme hakkında daha fazla bilgi edinmek için bkz. Microsoft Entra ID kullanarak bloblara erişimi yetkilendirme.
İzinler
Aşağıda, Microsoft Entra kullanıcı, grup, yönetilen kimlik veya hizmet sorumlusunun işlemi çağırması Get Page Ranges
için gereken RBAC eylemi ve bu eylemi içeren en az ayrıcalıklı yerleşik Azure RBAC rolü verilmiştir:
- Azure RBAC eylemi:Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read
- En az ayrıcalıklı yerleşik rol:Depolama Blob Veri Okuyucusu
Azure RBAC kullanarak rol atama hakkında daha fazla bilgi edinmek için bkz. Blob verilerine erişim için Azure rolü atama.
Açıklamalar
Her sayfa aralığı için başlangıç ve bitiş bayt uzaklıkları dahil edilir.
Çok fazla sayıda yazma işlemi içeren yüksek oranda parçalanmış bir sayfa blobunda, iç Get Page Ranges
sunucu zaman aşımı nedeniyle istek başarısız olabilir. Çok sayıda yazma işlemine sahip bir sayfa blobunun aralıklarını alan uygulamaların bir kerede sayfa aralıklarının bir alt kümesini alması gerekir.
Sürüm 2015-07-08'den itibaren, temel blob ile anlık görüntü arasında veya blobun iki anlık görüntüsü arasında farklılık gösteren sayfaları döndürmek için parametresiyle prevsnapshot
çağırabilirsinizGet Page Ranges
. Bu sayfa farklarını kullanarak sayfa blobunun artımlı anlık görüntüsünü kaydedebilirsiniz. Artımlı anlık görüntüler, kendi yedekleme çözümünüzü uygulamak istiyorsanız sanal makine disklerini yedeklemenin uygun maliyetli bir yoludur.
parametresiyle çağrılması Get Page Ranges
prevsnapshot
, tarafından prevsnapshot
belirtilen anlık görüntü alındığından beri güncelleştirilmiş veya temizlenmiş sayfaları döndürür. Ardından Sayfa Koy'ı kullanarak döndürülen sayfaları başka bir depolama hesabındaki bir yedekleme sayfası blob'una kopyalayabilirsiniz.
2019-07-07 sürümünden x-ms-previous-snapshot-url
itibaren üst bilgisini kullanarak artımlı anlık görüntüler için yönetilen disk hesaplarındaki anlık görüntüleri belirtebilirsiniz. Yönetilen diskler kullanmıyorsanız sorgu parametresini prevsnapshot
kullanın.
Artımlı anlık görüntü döndürmek için çağrıldığında blob üzerindeki bazı işlemlerin başarısız olmasına neden olur Get Page Ranges
.
Get Pages Ranges
tarafından belirtilen prevsnapshot
anlık görüntü alındıktan sonra Put Blob veya Copy Blob isteğinin hedefi olan bir blobda çağrılırsa hata kodu 409 (Çakışma) ile başarısız olur. İşlemin Get Page Ranges
hedefi bir anlık görüntüyse, tarafından prevsnapshot
belirtilen anlık görüntü eski olduğu ve iki anlık görüntü arasındaki aralıkta veya Put Blob
Copy Blob
işlem çağrıldığı sürece çağrı başarılı olur.
Not
Artımlı anlık görüntüler şu anda yalnızca 1 Ocak 2016 tarihinde veya sonrasında oluşturulmuş bloblar için desteklenmektedir. Bu özelliği eski bir blobda kullanma girişimleri, HTTP hata kodu 409 (Çakışma) olan hatayla sonuçlanır BlobOverwritten
.
Ayrıca bkz.
Azure Depolama'ya yönelik istekleri yetkilendirme
Durum ve hata kodları
Blob Depolama işlemleri için zaman aşımlarını ayarlama