Delen via


Een document ophalen

Azure Cosmos DB is een wereldwijd gedistribueerde, multi-model databaseservice met ondersteuning voor meerdere API’s. Dit artikel heeft betrekking op de SQL-API voor Azure Cosmos DB.

Met de Get Document bewerking wordt een document opgehaald op basis van de partitiesleutel en documentsleutel.

Aanvraag

Methode Aanvraag-URI Beschrijving
GET https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-id} Houd er rekening mee dat {databaseaccount} de naam is van het Azure Cosmos DB-account dat is gemaakt onder uw abonnement. De waarde {db-id} is de door de gebruiker gegenereerde naam/id van de database, niet de door het systeem gegenereerde id (rid). De waarde {coll-id} is de naam van de verzameling. De waarde {doc-id} is de id van het document dat moet worden opgehaald.

Kopteksten

Zie Algemene Azure Cosmos DB REST-aanvraagheaders voor headers die worden gebruikt door alle Cosmos DB-aanvragen. De belangrijke antwoordheaders voor Document lezen zijn als volgt:

Header Vereist Type Beschrijving
If-None-Match Optioneel Tekenreeks De waarde moet de etag van de resource zijn. Maakt de bewerking voorwaardelijk, dat wil gezegd dat het antwoord een hoofdtekst bevat, alleen de waarde in de database verschilt van de opgegeven waarde in de header.
x-ms-documentdb-partitionkey Optioneel Matrix De partitiesleutelwaarde voor het document dat moet worden gelezen. Moet worden opgenomen als en alleen als de verzameling is gemaakt met een partitionKey-definitie .
x-ms-consistentieniveau Optioneel Tekenreeks Het is het overschrijven van het consistentieniveau. De geldige waarden zijn: Sterk, Gebonden, Sessie of Uiteindelijk (in volgorde van sterk naar zwakste). De overschrijving moet hetzelfde of zwakker zijn dan het geconfigureerde consistentieniveau van het account.
x-ms-session-token Optioneel Tekenreeks Een tekenreekstoken dat wordt gebruikt met consistentie op sessieniveau. Clients moeten de meest recente leeswaarde van deze header herhalen tijdens leesaanvragen voor sessieconsistentie.

Hoofdtekst

Geen.

Antwoord

Retourneert de inhoud van het aangevraagde document.

Kopteksten

Zie Algemene Azure Cosmos DB REST-antwoordheaders voor headers die worden geretourneerd door alle Azure Cosmos DB-antwoorden. De belangrijke antwoordheaders voor Document ophalen zijn als volgt:

Header Type Beschrijving
x-ms-request-charge Aantal Het aantal aanvraageenheden dat door de bewerking wordt verbruikt.

Statuscodes

De volgende tabel bevat algemene statuscodes die door deze bewerking worden geretourneerd. Zie HTTP-statuscodes voor een volledige lijst met statuscodes.

HTTP-statuscode Beschrijving
200 Ok De bewerking is geslaagd.
304 Niet gewijzigd Het aangevraagde document is niet gewijzigd sinds de opgegeven eTag-waarde in de If-Match koptekst. De service retourneert een lege antwoordtekst.
400 Ongeldige aanvraag De onderdrukkingsset in de header x-ms-consistency-level is sterker dan degene die is ingesteld tijdens het maken van het account. Als het consistentieniveau bijvoorbeeld Sessie is, kan de onderdrukking niet Sterk of Gebonden zijn.
404 Niet gevonden Het document is niet langer een resource, dat wil gezegd dat het document is verwijderd.

Hoofdtekst

Eigenschap Beschrijving
id Het is de unieke naam die wordt gebruikt om een document te identificeren, dat wil gezegd dat geen twee documenten dezelfde id kunnen delen. De id mag niet langer zijn dan 255 tekens.
aangepast Elke door de gebruiker gedefinieerde JSON.
_Ontdoen Het is een door het systeem gegenereerde eigenschap. De resource-id (_rid) is een unieke id die ook hiërarchisch is per resourcestack in het resourcemodel. De id wordt intern gebruikt voor het plaatsen van en navigeren naar de documentresource.
_Ts Het is een door het systeem gegenereerde eigenschap. Hiermee geeft u de laatst bijgewerkte tijdstempel van de resource op. De waarde is in Unix-tijd.
_Zelf Het is een door het systeem gegenereerde eigenschap. Dit is de unieke adresseerbare URI voor de resource.
_etag Het is een door het systeem gegenereerde eigenschap die de resource-etag aangeeft die is vereist voor optimistisch gelijktijdigheidsbeheer.
Bijlagen Het is een door het systeem gegenereerde eigenschap die het adresseerbare pad voor de resource bijlagen aangeeft.
{  
  "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/"  
}  
  

Voorbeeld

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/"  
}  
  

Zie ook