Denetim Öncesi Tablo İsteği
İşlem, Preflight Table Request
isteği göndermeden önce Azure Tablo 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. Tablo Depolama için CORS etkinleştirildiyse, Tablo Depolama denetim öncesi isteğini hesap sahibinin Tablo Hizmeti Özelliklerini Ayarla aracılığıyla yapılandırdığı CORS kurallarında değerlendirir. Tablo 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 Table Request
.
<account-name>
değerini depolama hesabınızın adıyla değiştirin. değerini isteğin hedefi olacak tablo kaynağının adıyla değiştirin <table-resource>
.
HTTP fiili | İstek URI'si | HTTP sürümü |
---|---|---|
OPTIONS |
http://<account-name> .table.core.windows.net/<table-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 tablo 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 Table 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 Table Request
olarak AnonymousSuccess
günlüğe kaydedilir. Bu nedenle, Azure portal ölçümleri görüntülerseniz için Preflight Table 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 Table 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.table.core.windows.net/mytable 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.
Ayrıca bkz.
Hesap üzerindeki işlemler (Tablo Depolama)
Azure Depolama için CORS desteği