Я слушаю изменения во всех базах данных в моем экземпляре CouchDB, используя nano в моем приложении node.js, чтобы следовать за базой данных _global_changes
.
const globalChanges = nano.use('_global_changes');
const feed = globalChanges.follow({ since: "now", include_docs: true });
feed.on('change', function (change) {
// Here's the change that just happened
console.log(change);
});
feed.follow();
Это прекрасно работает при возврате ссылки на каждое изменение, когда оно происходит, но Я не знаю, как получить доступ к фактическому документу и подробностям изменения с этого момента.
Каждое изменение, которое выходит из ленты, выглядит следующим образом:
{
seq: '84-g1AAAAJjeJyd0UsKwjAQBuDY-tq6EJd6AklS-3Blb6KZTIdSqq5c6030JnoTvUlN0m6EIrQEJjDh_2AyJWNsmvvIZvp80TlCKmS85uaI0jx5isGyqqoi99XiaBoTzYmQoC3wh4GVqbBrpLmTBIQoxaarlFpp30gjJyUipAi2XaWDla4_02WSVIyyo3Qamspu5jLY3WpjpwHXQkW8l_aotafVBk6jhHgg-2mvWntbzXMaZjFxxF7ap9bcv_n1BhJFKlBtueILoc2geA',
id: 'updated:DATABASE-WHERE-CHANGE-HAPPENED',
changes: [ { rev: '22-8a4f097580a344b3d70e5adc17971cb4' } ],
doc: {
_id: 'updated:DATABASE-WHERE-CHANGE-HAPPENED',
_rev: '22-8a4f097580a344b3d70e5adc17971cb4'
}
}
С этого момента я не могу понять, как я могу запросить DATABASE-WHERE-CHANGE-HAPPENED
, чтобы получить конкретный документ, которыйбыл изменен / удален / добавлен, и выяснить, что именно с ним произошло.Я не могу найти документ в DATABASE-WHERE-CHANGE_HAPPENED
, который соответствует change._rev
или change.seq
...
Любая помощь будет принята с благодарностью.
(Я пытаюсь слушать всякий раз, когдадобавляется определенный тип вложений, а затем что-то делается с этим вложением.)