Document maken
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 Create Document
bewerking maakt u een nieuw document in een verzameling.
Aanvraag
Methode | Aanvraag-URI | Beschrijving |
---|---|---|
POST | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs | {databaseaccount} is de naam 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 die het document bevat. |
Kopteksten
Zie Algemene Azure Cosmos DB REST-aanvraagheaders voor headers die worden gebruikt door alle Azure Cosmos DB-aanvragen.
Header | Vereist | Type | Beschrijving |
---|---|---|---|
x-ms-documentdb-is-upsert | Optioneel | Booleaans | Als dit is ingesteld op true, maakt Cosmos DB het document met de id (en de partitiesleutelwaarde indien van toepassing) als dit niet bestaat, of werkt het document bij als het bestaat. |
x-ms-indexing-directive | Optioneel | Tekenreeks | De acceptabele waarde is Opnemen of Uitsluiten. - Met Opnemen wordt het document aan de index toegevoegd. - Sluit het document uit van indexering. De standaardinstelling voor indexeringsgedrag wordt bepaald door de waarde van de automatische eigenschap in het indexeringsbeleid voor de verzameling. |
Hoofdtekst
Eigenschap | Vereist | Type | Beschrijving |
---|---|---|---|
id | Vereist | Tekenreeks | Het is de unieke id die het document identificeert, dat wil gezegd dat geen twee documenten dezelfde id mogen delen. De id mag niet langer zijn dan 255 tekens. Het id-veld wordt automatisch toegevoegd wanneer een document wordt gemaakt zonder de id-waarde op te geven. U kunt de id-waarde echter altijd bijwerken door er een aangepaste waarde aan toe te wijzen in de aanvraagbody. |
<aangepast> | Vereist | JSON | Elke door de gebruiker gedefinieerde JSON. |
{
"id": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true
}
Antwoord
Retourneert de hoofdtekst van het gemaakte document.
Kopteksten
Zie Algemene Azure Cosmos DB REST-antwoordheaders voor headers die worden geretourneerd door alle Azure Cosmos DB-antwoorden.
Eigenschap | Type | Beschrijving |
---|---|---|
x-ms-request-charge | Aantal | Het aantal aanvraageenheden dat door de bewerking wordt verbruikt. |
x-ms-session-token | Tekenreeks | Een tekenreekstoken dat wordt gebruikt met consistentie op sessieniveau. Clients moeten deze waarde opslaan en instellen voor volgende leesaanvragen voor sessieconsistentie. |
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 |
---|---|
201 Gemaakt | De bewerking is geslaagd. |
400 Ongeldige aanvraag | De JSON-hoofdtekst is ongeldig. |
403 Verboden | De bewerking kan niet worden voltooid omdat de opslaglimiet van de partitie is bereikt. |
409 Conflict | De id die voor het nieuwe document is opgegeven, is overgenomen door een bestaand document. |
413 Entiteit is te groot | De documentgrootte in de aanvraag overschrijdt de toegestane documentgrootte. |
Hoofdtekst
Eigenschap | Beschrijving |
---|---|
_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 wordt de tijdstempel van de resource voor het laatst bijgewerkt. De waarde is een tijdstempel. |
_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": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true,
"_rid": "1KtjAImkcgwBAAAAAAAAAA==",
"_self": "dbs/1KtjAA==/colls/1KtjAImkcgw=/docs/1KtjAImkcgwBAAAAAAAAAA==/",
"_etag": "\"00003200-0000-0000-0000-56f9e84d0000\"",
"_ts": 1459218509,
"_attachments": "attachments/"
}
Voorbeeld
POST https://querydemo.documents.azure.com/dbs/1KtjAA==/colls/1KtjAImkcgw=/docs HTTP/1.1
x-ms-documentdb-partitionkey: ["Andersen"]
x-ms-date: Tue, 29 Mar 2016 02:28:29 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3d92WMAkQv0Zu35zpKZD%2bcGSH%2b2SXd8HGxHIvJgxhO6%2fs%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=602; x-ms-session-token=602
Content-Length: 344
Expect: 100-continue
{
"id": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true
}
HTTP/1.1 201 Created
Cache-Control: no-store, no-cache
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Fri, 25 Mar 2016 22:39:02.501 GMT
etag: "00003200-0000-0000-0000-56f9e84d0000"
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;
x-ms-resource-usage: documentSize=0;documentsSize=1;collectionSize=1;
x-ms-schemaversion: 1.1
x-ms-alt-content-path: dbs/testdb/colls/testcoll
x-ms-quorum-acked-lsn: 602
x-ms-current-write-quorum: 3
x-ms-current-replica-set-size: 4
x-ms-request-charge: 12.38
x-ms-serviceversion: version=1.6.52.5
x-ms-activity-id: 856acd38-320d-47df-ab6f-9761bb987668
x-ms-session-token: 0:603
Set-Cookie: x-ms-session-token#0=603; Domain=querydemo.documents.azure.com; Path=/dbs/1KtjAA==/colls/1KtjAImkcgw=
Set-Cookie: x-ms-session-token=603; Domain=querydemo.documents.azure.com; Path=/dbs/1KtjAA==/colls/1KtjAImkcgw=
x-ms-gatewayversion: version=1.6.52.5
Date: Tue, 29 Mar 2016 02:28:30 GMT
{
"id": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true,
"_rid": "1KtjAImkcgwBAAAAAAAAAA==",
"_self": "dbs/1KtjAA==/colls/1KtjAImkcgw=/docs/1KtjAImkcgwBAAAAAAAAAA==/",
"_etag": "\"00003200-0000-0000-0000-56f9e84d0000\"",
"_ts": 1459218509,
"_attachments": "attachments/"
}