你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

获取文档

Azure Cosmos DB 是一种全球分布式多模型数据库,支持多个 API。 本文介绍了适用于 Azure Cosmos DB 的 SQL API。

Get Document 操作按分区键和文档键检索文档。

请求

方法 请求 URI 说明
GET https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-id} 请注意,{databaseaccount} 是在订阅下创建的 Azure Cosmos DB 帐户的名称。 {db-id} 值是用户生成的数据库名称/ID,而不是系统生成的 ID (rid) 。 {coll-id} 值是集合的名称。 {doc-id} 值是要检索的文档的 ID。

标头

有关所有 Cosmos DB 请求 使用的标头,请参阅常见的 Azure Cosmos DB REST 请求标头。 读取文档的重要响应标头如下所示:

标头 必需 类型 说明
If-None-Match 可选 String 该值应为资源的 etag。 使操作具有条件性,即响应仅包含一个正文,数据库中的值不同于标头中的指定值。
x-ms-documentdb-partitionkey 可选 Array 要读取的文档的分区键值。 当且仅当集合是使用 partitionKey 定义创建的时,必须包含 。
x-ms-consistency-level 可选 String 它是一致性级别替代。 有效值为: StrongBoundedSessionEventual (,按最强到最弱) 顺序排列。 替代必须与帐户配置的一致性级别相同或更弱。
x-ms-session-token 可选 String 用于会话级别一致性的字符串令牌。 客户端必须在读取请求期间回显此标头的最新读取值,以确保会话一致性。

正文

无。

响应

返回所请求文档的内容。

标头

有关所有 Azure Cosmos DB 响应 返回的标头,请参阅常见的 Azure Cosmos DB REST 响应标头。 获取文档的重要响应标头如下所示:

标头 类型 说明
x-ms-request-charge Number 操作使用的请求单位数。

状态代码

下表列出了此操作返回的常见状态代码。 有关状态代码的完整列表,请参阅 HTTP 状态代码。

HTTP 状态代码 说明
200 正常 操作成功。
304 未修改 由于 If-Match 标头中的指定 eTag 值,请求的文档未修改。 服务返回空的响应正文。
400 错误的请求 x-ms-consistency-level 标头中设置的替代设置强于帐户创建期间设置的替代。 例如,如果一致性级别为 Session,则替代不能为 StrongBounded
404 未找到 该文档不再是一种资源,即文档已被删除。

正文

属性 说明
id 它是用于标识文档的唯一名称,即两个文档不能共享相同的 IDID 不得超过 255 个字符。
自定义 任何用户定义的 JSON。
_摆脱 它是 系统生成的属性。 资源 ID (_rid) 是一个唯一标识符,也是按资源模型上的资源堆栈分层的标识符。 它在内部用于文档资源的放置和导航。
_ts 它是系统生成的属性。 它指定资源的上次更新时间戳。 该值以 Unix 时间表示。
_自我 它是系统生成的属性。 它是资源的唯一可寻址 URI。
_Etag 它是一个系统生成的属性,指定乐观并发控制所需的资源 etag。
attachments 它是一个系统生成的属性,用于指定附件资源的可寻址路径。
{  
  "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/"  
}  
  

示例

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

另请参阅