Couchbase 同步网关多客户端

Couchbase Sync-Gateway Multiple Clients

我目前正在使用 Couchbase Sync-Gateway 并构建了一个演示应用程序。

如果用户在不同的设备(具有空数据库)上使用相同的用户名登录,或者如果他删除了本地数据库,预期的行为是什么?

我期望来自服务器的所有数据都应该同步回客户端。 这是正确的吗?

我的问题是,如果我正在删除数据库或从其他设备登录,则不会同步任何内容。

好的,我想通了,这正是我的想法。 如果我从不同的设备登录,我会自动同步所有数据。

我的问题是缺少同步功能。我认为它会使用默认值并自动将所有文档路由到 public 频道。 我现在正在使用以下简单的同步功能:

"sync": `function (doc, oldDoc) {
  channel('!');
  access('demo@example.com', '*');
}`

这将简单地将所有文档路由到 public 频道并授予我的演示用户访问权限。 我认为这不应该用于生产,但它是一个很好的开始。

现在一切正常。

编辑:我现在找到了丢失的信息: https://docs.couchbase.com/sync-gateway/current/configuration-properties.html#databases-this_db-sync

If you don't supply a sync function, Sync Gateway uses the following default sync function ... The channels property is an array of strings that contains the names of the channels to which the document belongs. If you do not include a channels property in a document, the document does not appear in any channels.