Mar*_*tra 4 couchdb cordova pouchdb sails.js ionic-framework
我想知道PouchDB
在移动应用程序中使用本地存储时,架构应该是什么样子localStorage
.
此时我习惯将应用程序的数据缓存到localStorage
需要的时候,我会对后端执行API调用以请求或发布数据.后端掌握着所有的逻辑.如:
然后将所有数据存储到关系数据库中.我现在一直在阅读NoSQL数据库,特别是CouchDB
和PouchDB
.所以我想知道这个架构会是什么样子?对我来说,此时出现了三个问题:
PouchDB
在客户端可以与远程同步PouchDB
.但是,当使用Javascript构建应用程序时,如何PouchDB
通过"黑客"客户端Javascript 确保人们不插入数据?3rd party
,你只需要举一个Sails.js
后端围绕CouchDB
?PouchDB维护者在这里,很高兴回答您的问题.:)
如果我有多个用户拥有自己的身份验证,我如何确保用户只能访问他们的数据?我还会在服务器端有1个数据库吗?
pouchdb-authentication README中有一个指南.Cloudant和Couchbase也有自己的系统来管理用户.
客户端的PouchDB可以与远程PouchDB同步.但是,当使用Javascript构建应用程序时,如何确保人们不通过"黑客"客户端Javascript将数据插入到PouchDB中?
您在服务器端编写validate_doc_update函数.当PouchDB尝试同步到CouchDB时,任何失败的文档都会发出一个'denied'
事件,这些文档将不会同步.
对于本地数据库,您无法阻止用户编写错误数据(他们可以随时打开控制台并执行他们想要的任何操作),但您可以使用类似的pouchdb-validation
方式在客户端重用验证功能.或者你可以在你put()
的文件时自己做.
这些设置会不会使用后端?如果你想为第三方提供API,你只需在CouchDB周围放一个Sails.js后端?
有些人在没有任何后端的情况下编写PouchDB应用程序(仅使用纯CouchDB/Cloudant/Couchbase),而其他人喜欢将数据库与他们选择的服务器架构混合在一起.由你决定.:)
如果您使用Express,一个有趣的解决方案是使用express-pouchdb,因此您可以在现有体系结构中公开类似PouchDB Server的端点.但是对于Sails.js,你必须自己编写.
归档时间: |
|
查看次数: |
1238 次 |
最近记录: |