如何构建多用户pouchdb / coucdb应用程序和身份验证

时间:2016-07-08 01:54:32

标签: ionic-framework couchdb pouchdb cloudant nosql

我已经阅读了关于这个主题的10个相关的stackoverflow问题,这些问题都散布在一个类似的问题上......我想围绕一个虚构的" todo"来简化我的问题。应用。我正在学习编码(javascript),而且我遇到了障碍。我的热情"让我学习的项目非常复杂,解决了个人旅行问题。有一天,我希望我能回馈!

这是虚构的应用程序:

此应用程序将使用Ionic 2构建。离线的第一个应用程序将允许用户登录并创建自己的#34; to dos。"这些应该可以通过手机和桌面访问并同步。用户还应该能够与可能能够复制其他人的社区共享他们的待办事项列表" Todo"名单。该应用程序还应该能够查询用户最常做的事情"刷我的牙齿"或者"查看我的蝙蝠侠收藏品。"用户还应该能够使用任何社交网络登录(Facebook,Twitter,谷歌等)。

1)如何构建pouchdb / couchdb数据库?打开沙发基地/云端。

是每个用户的数据库吗?它是每个角色的数据库吗?它是每个人的一个数据库(我知道这有安全问题)吗?

2)假设您将每个客户端pouchdb数据库合并到一个大型数据库进行查询是否正确?

3)您是否必须使用NodeJS后端或服务器?

4)您可以使用Auth0或Stormpath进行身份验证吗?

我已经研究了大约5天,我无法解决这个问题。我非常感谢所有的帮助。

编辑:我认为这解释了除了身份验证之外我还需要做什么,我想这可以和Bluemix一起使用?

https://cloudant.com/blog/replication-with-cloudant-pt-3/#.V38hxpMrJE6

思想?

1 个答案:

答案 0 :(得分:1)

您可以使用“pouchdb-authentication”管理用户身份验证:(https://github.com/nolanlawson/pouchdb-authentication

您可以在CouchDB“_user”数据库中为auth和用户元数据创建“user”文件,然后为每个用户创建一个数据库。

您可以为每个用户数据库和“设计文档”创建用户和角色,以规范与其关联的用户和角色与文档(用户的“待办事项”列表)相关联。

PouchDB“搜索插件”是开始使用它们的好方法(https://github.com/nolanlawson/pouchdb-quick-search),它提供了一种轻松查找内容的绝佳方式。

我只是将PouchDB / CouchDB用于我正在构建的应用程序。我需要在服务器端做的事情,我正在使用Perl。 PHP可能是一个更好的支持选项,但我喜欢Perl,并且有一些与CouchDb接口的perl模块,但我已经在perl中使用Curl完成了我需要的大部分工作。

“假设您将每个客户端pouchdb数据库合并到一个大型数据库中进行查询是否正确?”

我不知道。我最初的预感是否定的,除非您想将所有待办事项列表放在一个数据库中,以便所有人都可以轻松共享。我认为,如果您在用户数据库中保留用户ToDos,则可以更轻松地管理用户的细粒度共享。