Spec-Zone.ru › CouchDB 3.5

Справочник по структуре JSON

В этом приложении приведена краткая справка по всем структурам JSON, которые можно передавать CouchDB или получать в ответ на запросы.

Все документы базы данных

Поле

Описание

total_rows

Количество документов в базе данных или представлении

offset

Смещение, с которого начинается список документов

update_seq (optional)

Текущая последовательность обновлений базы данных

rows [array]

Массив объектов документов

Ответ на пакетную обработку документов

Поле

Описание

docs [array]

Документы, возвращённые при пакетной обработке

id

Идентификатор документа

error

Тип ошибки

reason

Строка с описанием ошибки и подробной причиной

Пакет документов

Поле

Описание

docs [array]

Документ из пакета документов

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

_deleted (optional)

Указывает, следует ли удалить документ

Сведения об изменениях в базе данных

Поле

Описание

last_seq

Последняя последовательность обновлений

pending

Количество оставшихся элементов в потоке

results [array]

Изменения, внесённые в базу данных

seq

Последовательность обновлений

id

Идентификатор документа

changes [array]

Список изменений этого документа по отдельным полям

Документ CouchDB

Поле

Описание

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

Статус ошибки CouchDB

Поле

Описание

id

Идентификатор документа

error

Тип ошибки

reason

Строка с описанием ошибки и подробной причиной

Объект сведений о базе данных CouchDB

Поле

Описание

db_name

Имя базы данных.

committed_update_seq

Количество зафиксированных обновлений.

doc_count

Количество документов в базе данных.

doc_del_count

Количество удалённых документов.

compact_running

Значение true означает, что для этой базы данных выполняется процедура уплотнения.

disk_format_version

Версия физического формата, используемого для хранения данных на жёстком диске.

disk_size

Размер хранящихся на диске данных в байтах. Индексы представлений не учитываются.

instance_start_time

Время открытия базы данных в микросекундах, прошедших с начала эпохи.

purge_seq

Количество операций очистки базы данных.

update_seq

Текущая последовательность обновлений базы данных.

Проектный документ

Поле

Описание

_id

Идентификатор проектного документа

_rev

Ревизия проектного документа

views

Представление

viewname

Определение представления

map

Функция map для представления

reduce (optional)

Функция reduce для представления

Сведения о проектном документе

Поле

Описание

name

Имя/идентификатор проектного документа

view_index

Индекс представления

compact_running

Показывает, выполняется ли сейчас процедура уплотнения представления

disk_size

Размер представления на диске в байтах

language

Язык определённых представлений

purge_seq

Обработанная последовательность очистки

signature

Подпись MD5 представлений проектного документа

update_seq

Последовательность обновлений соответствующей проиндексированной базы данных

updater_running

Показывает, обновляется ли сейчас представление

waiting_clients

Количество клиентов, ожидающих представления из этого проектного документа

waiting_commit

Показывает, есть ли ожидающие фиксации изменения в базовой базе данных, которые необходимо обработать

Документ с вложениями

Поле

Описание

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

_attachments (optional)

Вложение документа

filename

Сведения о вложении

content_type

Строка с типом содержимого MIME

data

Содержимое файла-вложения в кодировке Base64

Список активных задач

Поле

Описание

tasks [array]

Активные задачи

pid

Идентификатор процесса

status

Сообщение о состоянии задачи

task

Имя задачи

type

Тип операции

Настройки репликации

Поле

Описание

source

Имя или URL исходной базы данных.

target

Имя или URL целевой базы данных.

cancel (optional)

Отменяет репликацию.

checkpoint_interval (optional)

Задаёт интервал контрольных точек в мс.

continuous (optional)

Настраивает непрерывную репликацию.

create_target (optional)

Создаёт целевую базу данных.

doc_ids (optional)

Массив идентификаторов документов для синхронизации.

filter (optional)

Имя функции фильтра в формате ddoc/myfilter.

source_proxy (optional)

Адрес прокси-сервера, через который должна выполняться репликация из источника.

target_proxy (optional)

Адрес прокси-сервера, через который должна выполняться репликация в целевую базу данных.

query_params (optional)

Параметры запроса, передаваемые функции фильтра; значение должно быть документом, содержащим параметры в качестве элементов.

selector (optional)

Выбирает документы, включаемые в репликацию. Этот параметр повышает производительность по сравнению с использованием параметра filter.

since_seq (optional)

Последовательность, с которой следует начать репликацию.

use_checkpoints (optional)

Использовать ли контрольные точки репликации.

winning_revs_only (optional)

Реплицировать только победившие ревизии.

use_bulk_get (optional)

Попытаться использовать _bulk_get для получения ревизий.

Состояние репликации

Поле

Описание

ok

Состояние репликации

session_id

Уникальный идентификатор сеанса

source_last_seq

Последний номер последовательности, прочитанный из исходной базы данных

history [array]

История репликации

session_id

Идентификатор сеанса этой операции репликации

recorded_seq

Последний записанный номер последовательности

docs_read

Количество прочитанных документов

docs_written

Количество документов, записанных в целевую базу данных

doc_write_failures

Количество ошибок записи документов

start_time

Дата и время начала операции репликации

start_last_seq

Первый номер последовательности в потоке изменений

end_time

Дата и время завершения операции репликации

end_last_seq

Последний номер последовательности в потоке изменений

missing_checked

Количество проверенных отсутствующих документов

missing_found

Количество найденных отсутствующих документов

bulk_get_attempts

Количество попыток получения данных с помощью _bulk_get

bulk_get_docs

Количество документов, прочитанных с помощью _bulk_get

Объект запроса

Поле

Описание

body

Данные тела запроса в виде строки. Если метод запроса — GET, это поле содержит значение "undefined". Если метод — DELETE или HEAD, значение равно "" (пустая строка).

cookie

Объект с файлами cookie.

form

Объект с данными формы. Содержит декодированное тело в виде пар «ключ-значение», если заголовок Content-Type имеет значение application/x-www-form-urlencoded.

headers

Объект с заголовками запроса.

id

Запрошенный идентификатор документа в виде строки, если он был указан, или null в противном случае.

info

Сведения о базе данных

method

Метод запроса в виде строки или массива. Строковое значение — один из методов: HEAD, GET, POST, PUT, DELETE, OPTIONS и TRACE. В противном случае метод представлен массивом кодов символов.

path

Список запрошенных сегментов пути.

peer

IP-адрес источника запроса.

query

Объект с параметрами запроса URL. Обратите внимание: несколько ключей не поддерживаются, и значение последнего ключа заменяет остальные.

requested_path

Список фактически запрошенных сегментов пути.

raw_path

Необработанный запрошенный путь в виде строки.

secObj

Объект безопасности.

userCtx

Объект контекста пользователя.

uuid

Сгенерированный UUID согласно алгоритму, указанному в файле конфигурации.

{
    "body": "undefined",
    "cookie": {
        "AuthSession": "cm9vdDo1MDZBRjQzRjrfcuikzPRfAn-EA37FmjyfM8G8Lw",
        "m": "3234"
    },
    "form": {},
    "headers": {
        "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
        "Accept-Charset": "ISO-8859-1,utf-8;q=0.7,*;q=0.3",
        "Accept-Encoding": "gzip,deflate,sdch",
        "Accept-Language": "en-US,en;q=0.8",
        "Connection": "keep-alive",
        "Cookie": "m=3234:t|3247:t|6493:t|6967:t|34e2:|18c3:t|2c69:t|5acb:t|ca3:t|c01:t|5e55:t|77cb:t|2a03:t|1d98:t|47ba:t|64b8:t|4a01:t; AuthSession=cm9vdDo1MDZBRjQzRjrfcuikzPRfAn-EA37FmjyfM8G8Lw",
        "Host": "127.0.0.1:5984",
        "User-Agent": "Mozilla/5.0 (Windows NT 5.2) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7"
    },
    "id": "foo",
    "info": {
        "committed_update_seq": 2701412,
        "compact_running": false,
        "db_name": "mailbox",
        "disk_format_version": 6,
        "doc_count": 2262757,
        "doc_del_count": 560,
        "instance_start_time": "1347601025628957",
        "purge_seq": 0,
        "sizes": {
          "active": 7580843252,
          "disk": 14325313673,
          "external": 7803423459
        },
        "update_seq": 2701412
    },
    "method": "GET",
    "path": [
        "mailbox",
        "_design",
        "request",
        "_show",
        "dump",
        "foo"
    ],
    "peer": "127.0.0.1",
    "query": {},
    "raw_path": "/mailbox/_design/request/_show/dump/foo",
    "requested_path": [
        "mailbox",
        "_design",
        "request",
        "_show",
        "dump",
        "foo"
    ],
    "secObj": {
        "admins": {
            "names": [
                "Bob"
            ],
            "roles": []
        },
        "members": {
            "names": [
                "Mike",
                "Alice"
            ],
            "roles": []
        }
    },
    "userCtx": {
        "db": "mailbox",
        "name": "Mike",
        "roles": [
            "user"
        ]
    },
    "uuid": "3184f9d1ea934e1f81a24c71bde5c168"
}

Объект Request2

Поле

Описание

body

Данные тела запроса в виде строки. Если метод запроса — GET, это поле содержит значение "undefined". Если метод — DELETE или HEAD, значение равно "" (пустая строка).

cookie

Объект с файлами cookie.

headers

Объект с заголовками запроса.

method

Метод запроса в виде строки или массива. Строковое значение — один из методов: HEAD, GET, POST, PUT, DELETE, OPTIONS и TRACE. В противном случае метод представлен массивом кодов символов.

path

Список запрошенных сегментов пути.

peer

IP-адрес источника запроса.

query

Объект с параметрами запроса URL. Обратите внимание: несколько ключей не поддерживаются, и значение последнего ключа заменяет остальные.

requested_path

Список фактически запрошенных сегментов пути.

raw_path

Необработанный запрошенный путь в виде строки.

secObj

Объект безопасности.

userCtx

Объект контекста пользователя.

Объект ответа

Поле

Описание

code

Числовой код состояния HTTP.

json

Объект, который можно закодировать в JSON. Заголовок Content-Type автоматически устанавливается в значение application/json.

body

Необработанный текст ответа в виде строки. Заголовок Content-Type автоматически устанавливается в значение text/html; charset=utf-8.

base64

Строка в кодировке Base64. Заголовок Content-Type автоматически устанавливается в значение application/binary.

headers

Объект с заголовками ответа. Заголовок Content-Type из этого объекта переопределяет любое значение, заданное автоматически.

stop

Сигнал типа boolean для остановки перебора строк результата представления (только для функций списков)

Предупреждение

Ключи объекта body, base64 и json перекрывают друг друга, и при конфликте используется последний. Поскольку большинство реализаций объектов «ключ-значение» не сохраняют порядок ключей, а при их смешении могут возникнуть неоднозначные ситуации, старайтесь использовать только один из этих ключей.

Примечание

Любое пользовательское свойство вызывает внутреннее исключение CouchDB. Кроме того, объект ответа может быть простым строковым значением, которое автоматически оборачивается в объект {"body": ...}.

Возвращённый документ CouchDB с подробными сведениями о ревизиях

Поле

Описание

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

_revs_info [array]

Расширенные сведения о ревизиях документа CouchDB

rev

Полная строка ревизии

status

Состояние ревизии

Возвращённый документ CouchDB со сведениями о ревизиях

Поле

Описание

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

_revisions

Ревизии документа CouchDB

ids [array]

Массив допустимых идентификаторов ревизий в обратном порядке (сначала последние)

start

Номер префикса последней ревизии

Возвращённый документ с вложениями

Поле

Описание

_id (optional)

Идентификатор документа

_rev (optional)

Идентификатор ревизии (при обновлении существующего документа)

_attachments (optional)

Вложение документа

filename

Вложение

stub

Указывает, является ли вложение заглушкой

content_type

Строка с типом содержимого MIME

length

Длина данных вложения в байтах

revpos

Ревизия, в которой присутствует это вложение

Объект безопасности

Поле

Описание

admins

Роли и пользователи с правами администратора

roles [array]

Список ролей с соответствующими привилегиями

names [array]

Список пользователей с соответствующими привилегиями

members

Роли и пользователи без прав администратора

roles [array]

Список ролей с соответствующими привилегиями

names [array]

Список пользователей с соответствующими привилегиями

{
    "admins": {
        "names": [
            "Bob"
        ],
        "roles": []
    },
    "members": {
        "names": [
            "Mike",
            "Alice"
        ],
        "roles": []
    }
}

Объект контекста пользователя

Поле

Описание

db

Имя базы данных в контексте выполняемой операции.

name

Имя пользователя.

roles

Список ролей пользователя.

{
    "db": "mailbox",
    "name": null,
    "roles": [
        "_admin"
    ]
}

Сведения о заголовке представления

Поле

Описание

total_rows

Количество документов в представлении

offset

Смещение, с которого начинается список документов

{
    "total_rows": 42,
    "offset": 3
}

Copyright © 2025 The Apache Software Foundation — Licensed under the Apache License 2.0
https://docs.couchdb.org/en/3.5.1/json-structure.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API