Denetim Öncesi Blob İsteği
İşlem, Preflight Blob Request
isteği göndermeden önce Azure Blob Depolama için Çıkış Noktaları Arası Kaynak Paylaşımı (CORS) kurallarını sorgular.
Web tarayıcısı veya başka bir kullanıcı aracısı, aracının yapmak istediği istek için kaynak etki alanını, yöntemi ve üst bilgileri içeren bir denetim öncesi isteği gönderir. Blob Depolama için CORS etkinleştirildiyse, Blob Depolama denetim öncesi isteğini hesap sahibinin Blob Hizmeti Özelliklerini Ayarla aracılığıyla yapılandırdığı CORS kurallarında değerlendirir. Blob Depolama daha sonra isteği kabul eder veya reddeder.
CORS ve denetim öncesi isteği hakkında daha fazla bilgi için bkz. Azure Depolama için CORS belirtimi ve CORS desteği.
İstek
Aşağıdaki gibi belirtebilirsiniz Preflight Blob Request
.
<account-name>
değerini depolama hesabınızın adıyla değiştirin. değerini isteğin hedefi olacak kapsayıcı veya blob kaynağıyla değiştirin <blob-resource>
.
HTTP fiili | İstek URI'si | HTTP sürümü |
---|---|---|
OPTIONS |
http://<account-name>.blob.core.windows.net/<blob-resource> |
HTTP/1.1 |
Ana bilgisayar adını URI'nin yolundan ve sorgu bölümlerinden ayırmak için URI her zaman eğik çizgi (/) içermelidir. Bu işlem söz konusu olduğunda, URI'nin yol kısmı boş olabilir veya herhangi bir kapsayıcıya veya blob kaynağına işaret edebilir.
Denetim öncesi isteğin yapıldığı sırada kaynak var olabilir veya olmayabilir. Denetim öncesi isteği hizmet düzeyinde hizmetin CORS kurallarına göre değerlendirilir, bu nedenle kaynak adının varlığı veya olmaması işlemin başarısını veya başarısızlığını etkilemez.
URI parametreleri
Yok.
İstek üst bilgileri
Aşağıdaki tabloda gerekli ve isteğe bağlı istek üst bilgileri açıklanmaktadır:
İstek üst bilgisi | Açıklama |
---|---|
Origin |
Gereklidir. İsteğin yayımlandığı kaynağı belirtir. Çıkış noktası, denetim öncesi isteğinin başarısını veya başarısızlığını belirlemek için hizmetin CORS kurallarına göre denetlenmektedir. |
Access-Control-Request-Method |
Gereklidir. İstek için yöntemini (veya HTTP fiilini) belirtir. Yöntemi, denetim öncesi isteğinin başarısızlığını veya başarısını belirlemek için hizmetin CORS kurallarına göre denetlenmektedir. |
Access-Control-Request-Headers |
İsteğe bağlı. Gönderilecek istek üst bilgilerini belirtir. Mevcut değilse, hizmet isteğin üst bilgileri içermediğini varsayar. |
İstek gövdesi
Yok.
Yanıt
Yanıt bir HTTP durum kodu ve yanıt üst bilgileri kümesi içerir.
Durum kodu
Başarılı bir işlem 200 (Tamam) durum kodunu döndürür.
Durum kodları hakkında 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.
Denetim öncesi istek üst bilgileri hakkında ayrıntılı bilgi için CORS belirtimine bakın.
Yanıt üst bilgisi | Description |
---|---|
Access-Control-Allow-Origin |
Denetim öncesi isteği başarılı olursa istekteki kaynak üst bilgisiyle eşleşen izin verilen kaynağı gösterir. |
Access-Control-Allow-Methods |
Denetim öncesi isteği başarılı olursa, bu üst bilgi istek üst bilgisi Access-Control-Request-Method için belirtilen değere veya değerlere ayarlanır. |
Access-Control-Allow-Headers |
Denetim öncesi isteği başarılı olursa, bu üst bilgi istek üst bilgisi Access-Control-Request-Headers için belirtilen değere veya değerlere ayarlanır. |
Access-Control-Max-Age |
Kullanıcı aracısının gelecekteki istekler için denetim öncesi isteğini önbelleğe almasına izin verilen süreyi belirtir. |
Access-Control-Allow-Credentials |
İsteğin kimlik bilgileri aracılığıyla yapılıp yapılamayacağını gösterir. Bu üst bilgi her zaman olarak true ayarlanır. |
Yanıt gövdesi
Yok.
Yetkilendirme
İşlem Preflight Blob Request
her zaman anonim olarak yürütülür. Yetkilendirme gerektirmez ve sağlanırsa kimlik bilgilerini yoksayar.
Not
Azure Depolama analizini etkinleştirdiyseniz ve ölçümleri günlüğe kaydederseniz, işleme yönelik bir çağrı Preflight Blob Request
olarak AnonymousSuccess
günlüğe kaydedilir. Bu nedenle, Azure portal ölçümleri görüntülerseniz için Preflight Blob Request
günlüğe kaydedilen öğesini görürsünüzAnonymousSuccess
. Bu ölçüm, özel verilerinizin gizliliğinin ihlal edildiğini göstermez, ancak yalnızca işlemin 200 durum koduyla başarılı olduğunu Preflight Blob Request
gösterir (Tamam).
Örnek istek ve yanıt
Aşağıdaki örnek, kaynağı www.contoso.com
için bir denetim öncesi isteği gönderir. İstek yöntemi olarakPUT
, istek üst bilgileri ise ve accept
olarak content-type
ayarlanır.
OPTIONS http://myaccount.blob.core.windows.net/mycontainer/myblockblob HTTP/1.1
Accept: */*
Origin: www.contoso.com
Access-Control-Request-Method: PUT
Access-Control-Request-Headers: content-type, accept
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2; WOW64; Trident/6.0)
Content-Length: 0
Yanıt, HIZMET için CORS'nin etkinleştirildiğini ve bir CORS kuralının denetim öncesi isteğiyle eşleşdiğini gösterir:
HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Length: 0
Content-Type: text/html; charset=UTF-8
Access-Control-Allow-Origin: *
Access-Control-Max-Age: 60
Access-Control-Allow-Methods: PUT
Access-Control-Allow-Headers: accept,content-type
Açıklamalar
Hizmet için CORS etkinleştirildiyse ve CORS kuralı denetim öncesi isteğiyle eşleşiyorsa, hizmet denetim öncesi isteğine durum kodu 200 (Tamam) ile yanıt verir. Yanıt gerekli Access-Control
üst bilgileri içerir. Bu durumda istek faturalandırılır.
CORS etkin değilse veya hiçbir CORS kuralı denetim öncesi isteğiyle eşleşmiyorsa, hizmet 403 (Yasak) durum koduyla yanıt verir. Bu durumda istek faturalandırılmaz.
OPTIONS
İstek yanlış biçimlendirilmişse, hizmet 400 (Hatalı İstek) durum koduyla yanıt verir ve istek faturalanmaz. Hatalı biçimlendirilmiş isteklere örnek olarak gerekli Origin
ve Access-Control-Request-Method
üst bilgileri içermeyen istekler örnek olarak gösterilir.
Denetim öncesi isteği, belirli bir depolama hesabıyla ilişkili bir depolama hizmetinin CORS özelliğini sorgulamaya yönelik bir mekanizmadır. Denetim öncesi isteği belirli bir kaynağı hedeflemiyor.
Faturalama
Fiyatlandırma istekleri, Blob Depolama API'lerini kullanan istemcilerden, doğrudan Blob Depolama REST API'si aracılığıyla veya bir Azure Depolama istemci kitaplığından kaynaklanabilir. Bu istekler işlem başına ücret tahakkuk eder. İşlem türü, hesabın nasıl ücretlendirildiğinden etkilenir. Örneğin, okuma işlemleri yazma işlemlerinden farklı bir faturalama kategorisine tahakkuk eder. Aşağıdaki tabloda, depolama hesabı türüne göre istekler için Preflight Blob Request
faturalama kategorisi gösterilmektedir:
İşlem | Depolama hesabı türü | Faturalama kategorisi |
---|---|---|
Denetim Öncesi Blob İsteği | Premium blok blobu Standart genel amaçlı v2 |
Diğer işlemler |
Denetim Öncesi Blob İsteği | Standart genel amaçlı v1 | Okuma işlemleri |
Belirtilen faturalama kategorisinin fiyatlandırması hakkında bilgi edinmek için bkz. fiyatlandırma Azure Blob Depolama.
Ayrıca bkz.
Hesap üzerindeki işlemler (Blob Depolama)
Azure Depolama için CORS desteği