【发布时间】:2017-03-01 00:15:21
【问题描述】:
我已经构建了一个基于 Couchbase Lite 的 Android 应用程序,它通过 Sync Gateway 与 Couchbase 数据库通信。我现在尝试让 Couchbase Lite 使用 CouchDB 2.0 数据库进行复制,但出现以下错误:
W/RemoteRequest: com.couchbase.lite.replicator.RemoteRequest {POST,
http://192.168.1.5:5984/_revs_diff}: Got error status: 404 for
http://192.168.1.5:5984/_revs_diff. Reason: Object Not Found
W/Sync: PusherInternal{http://192.168.1.5:5984, push, 12ff9}: Progress:
set error =com.couchbase.lite.replicator.RemoteRequestResponseException:
Object Not Found
请注意,为此我不会通过 Sync Gateway,而是将 Couchbase Lite 直接指向 CouchDB Url。
我不知道我是否需要通过 Sync Gateway,但在阅读 Couchbase lite 上的 Couchbase 文档后,我的印象是我在连接到 CouchDb 数据库时不需要,而这篇文章似乎支持了这一点。 https://github.com/couchbase/sync_gateway/issues/312
有人可以确认一下 couchbase lite 是否可以直接使用 CouchDb 2.0 数据库进行复制,如果可以,正确的设置方法是什么?
此外,该应用将被许多网站使用,一个网站可以由一个或多个用户组成。我考虑切换到 CouchDb 的原因是我可以为每个站点拥有一个数据库,这在 Couchbase 中似乎并不容易实现。但是,我现在在 Couchbase 中发现了 Channels,它允许我使用一个数据库,但可以访问受站点限制的文档(即,一个站点可以有很多用户,并且所有用户都应该可以访问该站点的所有文档)。
在 CouchDb 中使用单独的数据库或在 Couchbase 中使用通道有什么优缺点?
谢谢。
【问题讨论】:
标签: android couchdb couchbase couchbase-lite