Belge Alma

Azure Cosmos DB birden çok API desteği olan global olarak dağıtılmış, çok modelli bir veritabanıdır. Bu makale Azure Cosmos DB için SQL API’sini kapsar.

İşlem, Get Document bir belgeyi bölüm anahtarı ve belge anahtarıyla alır.

İstek

Yöntem İstek URI'si Açıklama
GET https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-id} {databaseaccount}, aboneliğiniz altında oluşturulan Azure Cosmos DB hesabının adıdır. {db-id} değeri, sistem tarafından oluşturulan kimlik (rid) değil, veritabanının kullanıcı tarafından oluşturulan adı/kimliğidir. {coll-id} değeri koleksiyonun adıdır. {doc-id} değeri, alınacak belgenin kimliğidir.

Üst Bilgiler

Tüm Cosmos DB istekleri tarafından kullanılan üst bilgiler için bkz. Yaygın Azure Cosmos DB REST isteği üst bilgileri. Belge Okuma için önemli yanıt üst bilgileri aşağıdaki gibidir:

Üst bilgi Gerekli Tür Description
If-None-Match İsteğe Bağlı Dize Değer, kaynağın etag'i olmalıdır. İşlemi koşullu hale getirir, yani yanıt bir gövde içerir, yalnızca veritabanındaki değer üst bilgideki belirtilen değerden farklıdır.
x-ms-documentdb-partitionkey İsteğe Bağlı Dizi Okunacak belgenin bölüm anahtarı değeri. Yalnızca koleksiyon partitionKey tanımıyla oluşturulduysa dahil edilmelidir.
x-ms-consistency-level İsteğe Bağlı Dize Tutarlılık düzeyi geçersiz kılma işlemidir. Geçerli değerler şunlardır: Strong, Bounded, Session veya Eventual (en güçlüden en zayıfa doğru). Geçersiz kılma, hesabın yapılandırılan tutarlılık düzeyinden aynı veya daha zayıf olmalıdır.
x-ms-session-token İsteğe Bağlı Dize Oturum düzeyi tutarlılığı ile kullanılan dize belirteci. İstemcilerin oturum tutarlılığı için okuma istekleri sırasında bu üst bilginin en son okuma değerini yansıtması gerekir.

Gövde

Yok.

Yanıt

İstenen belgenin içeriğini döndürür.

Üst Bilgiler

Tüm Azure Cosmos DB yanıtları tarafından döndürülen üst bilgiler için bkz. Genel Azure Cosmos DB REST yanıt üst bilgileri. BelgeYi Al için önemli yanıt üst bilgileri aşağıdaki gibidir:

Üst bilgi Tür Description
x-ms-request-charge Sayı İşlem tarafından kullanılan istek birimi sayısı.

Durum kodları

Aşağıdaki tabloda bu işlem tarafından döndürülen genel durum kodları listelenmektedir. Durum kodlarının tam listesi için bkz. HTTP Durum Kodları..

HTTP durum kodu Açıklama
200 Tamam İşlem başarılı oldu.
304 Değiştirilmedi İstenen belge, If-Match üst bilgisinde belirtilen eTag değerinden bu yana değiştirilmedi. Hizmet boş bir yanıt gövdesi döndürür.
400 Hatalı İstek x-ms-consistency-level üst bilgisinde ayarlanan geçersiz kılma, hesap oluşturma sırasında ayarlanandan daha güçlüdür. Örneğin, tutarlılık düzeyi Oturum ise geçersiz kılma Güçlü veya Sınırlanmış olamaz.
404 Bulunamadı Belge artık bir kaynak değil, başka bir ifadeyle belge silindi.

Gövde

Özellik Açıklama
id Bu, bir belgeyi tanımlamak için kullanılan benzersiz addır, yani iki belge aynı kimliği paylaşamıyor. Kimlik 255 karakteri aşmamalıdır.
özel Kullanıcı tanımlı herhangi bir JSON.
_Kurtulmak Sistem tarafından oluşturulan bir özelliktir. Kaynak kimliği (_rid), kaynak modelinde kaynak yığını başına da hiyerarşik olan benzersiz bir tanımlayıcıdır. Belge kaynağının yerleştirilmesi ve gezinti için uygulama tarafından kullanılır.
_Ts Sistem tarafından oluşturulan bir özelliktir. Kaynağın son güncelleştirilmiş zaman damgasını belirtir. Değer Unix zamanındadır.
_Kendini Sistem tarafından oluşturulan bir özelliktir. Kaynak için benzersiz adreslenebilir URI'dir.
_Etag İyimser eşzamanlılık denetimi için gereken kaynak etag'ini belirten sistem tarafından oluşturulan bir özelliktir.
Ekleri Ekler kaynağı için adreslenebilir yolu belirten sistem tarafından oluşturulan bir özelliktir.
{  
  "id": "SalesOrder1",  
  "ponumber": "PO18009186470",  
  "OrderDate": "2005-07-01T00:00:00",  
  "ShippedDate": "0001-01-01T00:00:00",  
  "AccountNumber": "Account1",  
  "SubTotal": 419.4589,  
  "TaxAmount": 12.5838,  
  "Freight": 472.3108,  
  "TotalDue": 985.018,  
  "Items": [  
    {  
      "OrderQty": 1,  
      "ProductId": 760,  
      "UnitPrice": 419.4589,  
      "LineTotal": 419.4589  
    }  
  ],  
  "_rid": "d9RzAJRFKgwBAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwBAAAAAAAAAA==/",  
  "_etag": "\"0000d986-0000-0000-0000-56f9e25b0000\"",  
  "_ts": 1459216987,  
  "_attachments": "attachments/"  
}  
  

Örnek

GET https://querydemo.documents.azure.com/dbs/testdb/colls/testcoll/docs/SalesOrder1 HTTP/1.1  
x-ms-documentdb-partitionkey: ["Account1"]  
x-ms-date: Tue, 29 Mar 2016 02:03:06 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3dyhmbeaUDy6NCOyWr0t7Cxx4aMT4Yx%2bJnRAs%2br8Theyw%3d  
Cache-Control: no-cache  
User-Agent: Microsoft.Azure.Documents.Client/1.6.0.0  
x-ms-version: 2015-12-16  
Accept: application/json  
Host: querydemo.documents.azure.com  
Cookie: x-ms-session-token#0=772; x-ms-session-token=772  
  
HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Transfer-Encoding: chunked  
Content-Type: application/json  
Content-Location: https://querydemo.documents.azure.com/dbs/testdb/colls/testcoll/docs/SalesOrder1  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Mon, 28 Mar 2016 14:47:03.949 GMT  
etag: "0000d986-0000-0000-0000-56f9e25b0000"  
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;  
x-ms-resource-usage: documentSize=0;documentsSize=2;collectionSize=2;  
x-ms-schemaversion: 1.1  
x-ms-alt-content-path: dbs/testdb/colls/testcoll  
x-ms-content-path: d9RzAJRFKgw=  
x-ms-request-charge: 1  
x-ms-serviceversion: version=1.6.52.5  
x-ms-activity-id: c22bc349-2c02-4b80-81b9-a2d758c92902  
x-ms-session-token: 0:772  
Set-Cookie: x-ms-session-token#0=772; Domain=querydemo.documents.azure.com; Path=/dbs/testdb/colls/testcoll  
Set-Cookie: x-ms-session-token=772; Domain=querydemo.documents.azure.com; Path=/dbs/testdb/colls/testcoll  
x-ms-gatewayversion: version=1.6.52.5  
Date: Tue, 29 Mar 2016 02:03:06 GMT  
  
{  
  "id": "SalesOrder1",  
  "ponumber": "PO18009186470",  
  "OrderDate": "2005-07-01T00:00:00",  
  "ShippedDate": "0001-01-01T00:00:00",  
  "AccountNumber": "Account1",  
  "SubTotal": 419.4589,  
  "TaxAmount": 12.5838,  
  "Freight": 472.3108,  
  "TotalDue": 985.018,  
  "Items": [  
    {  
      "OrderQty": 1,  
      "ProductId": 760,  
      "UnitPrice": 419.4589,  
      "LineTotal": 419.4589  
    }  
  ],  
  "_rid": "d9RzAJRFKgwBAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwBAAAAAAAAAA==/",  
  "_etag": "\"0000d986-0000-0000-0000-56f9e25b0000\"",  
  "_ts": 1459216987,  
  "_attachments": "attachments/"  
}  
  

Ayrıca Bkz.