我即将构建一个通过Restful API共享资源的Web应用程序.
让我感到震惊的是,CouchDB已经有了一个很好的Restful API层.
那我为什么要创建自己的呢?
我不能只是让其他Web应用程序上的CouchDB使用我的资源(JSON文件),通过它的REST API,而不是直接node.js的是中间人的?
或者我在CouchDB和第三方Web应用程序之间需要一些逻辑吗?
现在还没有使用CouchDB的,所以我不知道这是否能够处理先进的授权,如果"设计文件的javascript"应用程序是一样好,"Node.js的JavaScript的".
您希望在两者之间构建自己的薄层有几个原因:
非JSON资源(对于可读访问,这也可能与Couch一起使用)
自定义后端逻辑(即调度邮件,根据请求调用内部应用程序处理程序)
身份验证(Couch的auth选项有限)
服务器端过滤(使用node.js可能比Couch中的更新处理程序更容易)
安全性(您是否愿意运行可直接访问的沙发实例?)
对于我自己,我使用CouchDB和node.js构建了一个RESTful API.由于两者都使用JSON,所以必要的开销仍然非常小,但您拥有100%自己的中间层代码的完全灵活性.