Obter um Documento
O Azure Cosmos DB é uma base de dados com múltiplos modelos distribuído globalmente com suporte para várias APIs. Este artigo abrange a API SQL para o Azure Cosmos DB.
A Get Document
operação obtém um documento pela respetiva chave de partição e chave de documento.
Pedir
Método | URI do pedido | Descrição |
---|---|---|
GET | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-id} | Tenha em atenção que {databaseaccount} é o nome da conta do Azure Cosmos DB criada na sua subscrição. O valor {db-id} é o nome/ID gerado pelo utilizador da base de dados e não o ID gerado pelo sistema (rid). O valor {coll-id} é o nome da coleção. O valor {doc-id} é o ID do documento a obter. |
Cabeçalhos
Veja Common Azure Cosmos DB REST request headers for headers that are used by all Cosmos DB requests (Cabeçalhos de pedido REST do Azure Cosmos DB comuns para cabeçalhos que são utilizados por todos os pedidos do Cosmos DB). Os cabeçalhos de resposta importantes do Documento de Leitura são os seguintes:
Cabeçalho | Necessário | Tipo | Description |
---|---|---|---|
If-None-Match | Opcional | String | O valor deve ser o etag do recurso. Torna a operação condicional, ou seja, a resposta inclui um corpo apenas o valor na base de dados é diferente do valor especificado no cabeçalho. |
x-ms-documentdb-partitionkey | Opcional | Matriz | O valor da chave de partição para o documento ser lido. Tem de ser incluído se e apenas se a coleção for criada com uma definição partitionKey . |
x-ms-consistency-level | Opcional | String | É a substituição do nível de consistência. Os valores válidos são: Forte, Vinculado, Sessão ou Eventual (por ordem do mais forte para o mais fraco). A substituição tem de ser igual ou mais fraca do que o nível de consistência configurado da conta. |
x-ms-session-token | Opcional | String | Um token de cadeia utilizado com consistência ao nível da sessão. Os clientes têm de ecoar o valor de leitura mais recente deste cabeçalho durante os pedidos de leitura para consistência da sessão. |
Corpo
Nenhum.
Resposta
Devolve o conteúdo do documento pedido.
Cabeçalhos
Veja Common Azure Cosmos DB REST response headers for headers that are returned by all Azure Cosmos DB responses (Cabeçalhos de resposta REST do Azure Cosmos DB comuns para cabeçalhos devolvidos por todas as respostas do Azure Cosmos DB). Os cabeçalhos de resposta importantes para Obter Documento são os seguintes:
Cabeçalho | Tipo | Description |
---|---|---|
x-ms-request-charge | Número | O número de unidades de pedido consumidas pela operação. |
Códigos de estado
A tabela seguinte lista os códigos de estado comuns devolvidos por esta operação. Para obter uma lista completa dos códigos de estado, consulte Códigos de Estado HTTP..
Código de estado de HTTP | Descrição |
---|---|
200 Ok | A operação foi bem-sucedida. |
304 Não Modificado | O documento pedido não foi modificado, uma vez que o valor eTag especificado no cabeçalho If-Match. O serviço devolve um corpo de resposta vazio. |
400 Pedido Incorreto | O conjunto de substituição no cabeçalho de nível x-ms-consistency é mais forte do que o definido durante a criação da conta. Por exemplo, se o nível de consistência for Sessão, a substituição não pode ser Forte ou Limitada. |
404 Não Encontrado | O documento já não é um recurso, ou seja, o documento foi eliminado. |
Corpo
Propriedade | Descrição |
---|---|
id | É o nome exclusivo utilizado para identificar um documento, ou seja, nenhum documento pode partilhar o mesmo ID. O ID não pode exceder os 255 carateres. |
personalizadas | Qualquer JSON definido pelo utilizador. |
_rid | É uma propriedade gerada pelo sistema. O ID do recurso (_rid) é um identificador exclusivo que também é hierárquico de acordo com a pilha de recursos no modelo de recursos. É utilizado internamente para posicionamento e navegação do recurso de documento. |
_ts | É uma propriedade gerada pelo sistema. Especifica o último carimbo de data/hora atualizado do recurso. O valor está na hora Unix. |
_self | É uma propriedade gerada pelo sistema. É o URI endereçável exclusivo para o recurso. |
_etag | É uma propriedade gerada pelo sistema que especifica o etag de recursos necessário para o controlo de simultaneidade otimista. |
anexos | É uma propriedade gerada pelo sistema que especifica o caminho endereçável para o recurso de anexos. |
{
"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/"
}
Exemplo
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/"
}