Я только что начал использовать сервер MongoDB и RESTHeart api.Как избавиться от лишних ключей json от результата MongoDB
Я хочу заменить существующую БД на MongoDB, и существующая БД тоже получает json из остального api, я думал, что изменение будет немного. Итак, ниже вопрос:
Когда я запрос MongoDB, это то, что я получаю
{
"_collection-props-cached": false,
"_embedded": {
"rh:doc": [
{
"_etag": {
"$oid": "56ff559b7ea5c11edc8f93b7"
},
"_id": {
"$oid": "56ff559b7ea5c11edc8f93b6"
},
"_links": {
"self": {
"href": "/presence/active_watchers/56ff559b7ea5c11edc8f93b6"
}
},
"callid": "[email protected]0.1.168",
"contact": "sip:[email protected]:5060;transport=UDP",
"event": "presence",
},
{
"_etag": {
"$oid": "56ff55897ea5c11edc8f93b5"
},
"_id": {
"$oid": "56ff55897ea5c11edc8f93b4"
},
"_links": {
"self": {
"href": "/presence/active_watchers/56ff55897ea5c11edc8f93b4"
}
},
"callid": "[email protected]",
"contact": "sip:[email protected]:5060;transport=UDP",
"event": "presence",
"event_id": "",
}
]
},
"_etag": {
"$oid": "56ff44807ea5c11edc8f93a6"
},
"_id": "active_watchers",
"_links": {
"curies": [],
"self": {
"href": "/presence/active_watchers"
}
},
"_returned": 2,
"descr": "subscriptions collection"
}
Я заинтересован только в rh_doc массива. Мой вопрос: есть ли способ, которым я могу просто получить только документы из Monogo без дополнительной информации.
Проблема в том, что существующий код ожидает только массив значений, например [{callid:"123",...},{callid:"234",...}]
, и он был закодирован таким образом в C, используя cJSON. Страшно трогать код C!
Или может быть, если CJSON может удалить ключи: _etag, _id т.д.
Редактировать Это, как я запрос:
http GET "http://localhost:8080/presence/active_watchers?filter={'presentity_uri':'sip:[email protected]'}&filter={'event':'presence'}"
Благодаря
Если я вас правильно, вы можете захотеть использовать [проекцию] (https://docs.mongodb.org/ manual/reference/glossary/# term-projection) –
Как вы запрашиваете коллекцию, чтобы получить текущий результат? –
@MarkusWMahlberg Спасибо. Я думаю, что это то, что требуется, я сейчас изучаю его. – Jardanian