反馈请求:为多个用户/帐户设置具有客户端复制 (pouchdb) 的 Couchdb



在进入开发之前,我想获得有关我正在考虑进行的更改的反馈,从mongo转移到沙发。

基本上,我有一个网络应用程序,用于帮助组织用户活动(待办事项列表,日历,便笺,日记)。 它目前使用mongodb,但我正在考虑将其移动到couch,主要是由于couches复制能力和clientdb交互(pouchdb)。 我在浏览器上使用本地存储的类似自主设置,由 mongo 支持,但我正在寻找更成熟的解决方案。

由于couchdb与mongodb的不同,我认为每个用户都应该有自己的couch db,他们的文档是我的每个应用程序组件。 基本上,由于本地数据库复制和安全性,我必须将所有内容都与沙发一起移动。

我有3个问题。

1)我假设沙发没有文档级安全性/身份验证,对吗? (因此,我将每个用户资产移动到他们自己的数据库中,好主意?

2)我的计划是让用户登录到网站,然后我的后端nodejs代码对他们进行身份验证,并向他们发送一些身份验证/会话令牌。 然后,客户端上的 javascript 使用其本地 pouchdb 数据进行设置,并将复制请求直接发送到 couchdb 服务器(使用它从我的服务器端进程获得的身份验证令牌)。 他们应该只能访问他们的数据库,因为我可以对每个数据库进行身份验证访问(对吗?您如何看待这种设置? 它应该有效吗?

3)关于couchdb服务提供商,为什么他们的沙发版本差异如此之大? IE,快乐沙发,1.6.1,虹膜1.5,云,1.0.2? 我还听说 couchdb 2.0 即将推出...... 我想使用 cloudant,但 1.0.2 是从 1.6 或 1.5 回来的很多版本,如果我不做任何异国情调的事情,这有关系吗?

奖励问题 :p 从最后一个问题继续,您是否知道任何托管节点的服务.js并且有可用的 couchdb 本地实例? 我想使用后端服务器代码作为代理,但不以牺牲另一个网络跃点为代价。

非常感谢您的反馈,保罗

由于 couchdb 与 mongodb 的不同之处,我认为每个用户都应该有自己的 couch db

这是 CouchDB 的最佳实践。不错的选择。

我假设沙发没有文档级安全性/身份验证,对吗?(因此,我将每个用户资产移动到他们自己的数据库中,好主意?

你是对的:https://github.com/nolanlawson/pouchdb-authentication

我的计划是让用户登录网站...

是的。你可以直接将cookie标头从Node.js传递到CouchDB,它会正常工作。nano有一些关于如何做到这一点的文档:https://github.com/dscape/nano#using-cookie-authentication

关于couchdb服务提供商,为什么他们的沙发版本差异如此之大

沙发社区是一个幸福的支离破碎的大家庭。 :)

我想使用 cloudant,但 1.0.2 是从 1.6 或 1.5 回来的很多版本,如果我不做任何异国情调的事情,这有关系吗?

1.0.2 是指 Cloudant 分叉 CouchDB 的时间。从那时起,他们添加了很多自己的功能,以至于它们现在几乎与功能相当。

各种 Couch 实现之间的最大区别在于身份验证。每个人(Cloudant,CouchDB,Couchbase)都以不同的方式做这件事。

相关内容

最新更新