Список документов (ReadFeed)
Выполнение GET на ресурсе документов из определенной коллекции, т. е. путь URI docs возвращает список документов в коллекции. ReadFeed можно использовать для извлечения всех документов или только добавочных изменений в документах в коллекции.
Запрос
Метод | Универсальный код ресурса (URI) запроса | Описание |
---|---|---|
GET | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs |
Обратите внимание, что {databaseaccount} — это имя учетной записи Azure Cosmos DB, созданной в рамках подписки. Значением {db-id} является идентификатор базы данных, а значением {coll-id} является имя коллекции. |
Заголовки
Заголовки, используемые всеми запросами Cosmos DB, см. в статье Общие заголовки запросов REST Azure Cosmos DB . Ниже перечислены важные заголовки ответов для readFeed Document.
Заголовок | Обязательно | Тип | Описание |
---|---|---|---|
x-ms-max-item-count |
Необязательный | Число | Целое число, указывающее максимальное количество возвращаемых элементов на страницу. |
x-ms-continuation |
Необязательно | Строка | Строковый маркер, возвращаемый для запросов и операций чтения и веб-канала, если есть дополнительные результаты для чтения. Клиенты могут получить следующую страницу результатов, повторно отдав запрос с заголовком запроса x-ms-continuation, для которого задано это значение. |
x-ms-consistency-level |
Необязательно | Строка | Это переопределение уровня согласованности. Допустимые значения: Strong, Bounded, Session или Eventual (в порядке от сильного к самому слабому). Переопределение должно быть таким же или слабым, чем настроенный для учетной записи уровень согласованности. |
x-ms-session-token |
Необязательно | Строка | Строковый токен, используемый для согласованности на уровне сеанса. Клиенты должны повторять последнее значение для чтения этого заголовка во время запросов на чтение для согласованности сеанса. |
A-IM |
Необязательно | Строка | В противном случае необходимо задать значение Incremental feed или опустить. Доступно в версии 2016-07-11 REST API и более поздних версий. |
If-None-Match |
Необязательно | Строка | Без заголовка: возвращает все изменения с самого начала (создание коллекции) "*": возвращает все новые изменения данных в коллекции <etag>: если задано значение ETag коллекции, возвращает все изменения, внесенные с момента логической метки времени. Доступно в версии |
x-ms-documentdb-partitionkeyrangeid |
Необязательно | Строка | Идентификатор диапазона ключей разделов для считывания данных. Доступно в версии 2016-07-11 REST API и более поздних версий. |
Текст
Нет.
Ответ
Возвращает массив документов, хранящихся в коллекции.
Заголовки
Заголовки, возвращаемые всеми ответами Cosmos DB, см. в статье Общие заголовки ответов REST Azure Cosmos DB . Важные заголовки ответа:
Заголовок | Тип | Описание |
---|---|---|
x-ms-continuation |
Строка | Возвращает маркер для получения дополнительных результатов операции. Клиент может повторно отправить запрос с заголовком x-ms-continuation request , содержащим это значение, чтобы возобновить выполнение. |
x-ms-request-charge |
Число | Количество единиц запросов, используемых операцией. |
etag |
Строка | Логический порядковый номер последнего документа, возвращенного в ответе. Добавочный ReadDocumentFeed можно возобновить, повторно задав это значение в параметре If-None-Match. |
Коды состояния
В таблице ниже указаны стандартные коды состояния, возвращаемые этой операцией. Полный список кодов состояния см. в разделе Коды состояния HTTP.
Код состояния HTTP | Описание |
---|---|
200 ОК | Операция выполнена успешно. |
400 — недопустимый запрос | Уровень переопределения, заданный в заголовке x-ms-consistency-level, сильнее уровня переопределения, заданного во время создания учетной записи. Например, если уровень согласованности имеет значение Session, переопределение не может выполняться с уровнем Strong или Bounded. |
Текст
Свойство | Описание |
---|---|
_rid |
Это созданный системой идентификатор ресурса для коллекции, в которой размещаются документы. |
_count |
Это количество документов, возвращенных операцией списка. |
Documents |
Массив документов, возвращенных операцией. |
Свойства документа
Свойство | Описание |
---|---|
id |
Это уникальное имя, которое идентифицирует документ, т. е. ни один документ не может совместно использовать один и тот же id . Длина id не должна превышать 255 символов. |
<custom> | Любой определяемый пользователем элемент JSON. |
_rid |
Это свойство, созданное системой. Идентификатор ресурса (_rid ) — это уникальный идентификатор, который также является иерархическим в стеке ресурсов в модели ресурсов. Он используется внутренне для размещения ресурса документа и перемещения по нему. |
_ts |
Это системное свойство. Оно представляет метку времени последнего обновления ресурса. Значение — метка времени. |
_self |
Это системное свойство. Это уникальный адресуемый URI для ресурса. |
_etag |
Это созданное системой свойство, указывающее ресурс etag , необходимый для управления оптимистическим параллелизмом. |
_attachments |
Это системное свойство, обозначающее адресуемый путь к ресурсу вложений. |
{
"_rid": "d9RzAJRFKgw=",
"Documents": [
{
"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/"
},
{
"id": "SalesOrder2",
"ponumber": "PO15428132599",
"OrderDate": "2005-07-01T00:00:00",
"DueDate": "2005-07-13T00:00:00",
"ShippedDate": "2005-07-08T00:00:00",
"AccountNumber": "Account2",
"SubTotal": 6107.0820,
"TaxAmt": 586.1203,
"Freight": 183.1626,
"TotalDue": 4893.3929,
"DiscountAmt": 1982.872,
"Items": [
{
"OrderQty": 3,
"ProductCode": "A-123",
"ProductName": "Product 1",
"CurrencySymbol": "$",
"CurrencyCode": "USD",
"UnitPrice": 17.1,
"LineTotal": 5.7
}
],
"_rid": "d9RzAJRFKgwCAAAAAAAAAA==",
"_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwCAAAAAAAAAA==/",
"_etag": "\"0000da86-0000-0000-0000-56f9e25b0000\"",
"_ts": 1459216987,
"_attachments": "attachments/"
}
],
"_count": 2
}
Пример
GET https://querydemo.documents.azure.com/dbs/testdb/colls/testcoll/docs HTTP/1.1
x-ms-max-item-count: 10
x-ms-documentdb-query-enablecrosspartition: False
x-ms-date: Tue, 29 Mar 2016 02:03:06 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3dlmte5%2bJR8gIvDubFWZ0W2cgec22LcFAkZgDZxqOBsOI%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
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Sun, 27 Mar 2016 22:39:13.369 GMT
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;
x-ms-resource-usage: documentSize=0;documentsSize=2;collectionSize=2;
x-ms-item-count: 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: 46e2e9a5-4917-4ff6-9be5-6f206c38bb6b
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:07 GMT
{
"_rid": "d9RzAJRFKgw=",
"Documents": [
{
"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/"
},
{
"id": "SalesOrder2",
"ponumber": "PO15428132599",
"OrderDate": "2005-07-01T00:00:00",
"DueDate": "2005-07-13T00:00:00",
"ShippedDate": "2005-07-08T00:00:00",
"AccountNumber": "Account2",
"SubTotal": 6107.0820,
"TaxAmt": 586.1203,
"Freight": 183.1626,
"TotalDue": 4893.3929,
"DiscountAmt": 1982.872,
"Items": [
{
"OrderQty": 3,
"ProductCode": "A-123",
"ProductName": "Product 1",
"CurrencySymbol": "$",
"CurrencyCode": "USD",
"UnitPrice": 17.1,
"LineTotal": 5.7
}
],
"_rid": "d9RzAJRFKgwCAAAAAAAAAA==",
"_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwCAAAAAAAAAA==/",
"_etag": "\"0000da86-0000-0000-0000-56f9e25b0000\"",
"_ts": 1459216987,
"_attachments": "attachments/"
}
],
"_count": 2
}