我正在尝试构建一个用于学习Node.js的测试应用程序。我来自wordpress背景,Apache为我设置了大部分后端逻辑。但现在,我必须建立自己的。我有一个关于如何从服务器端到客户端提供JSON文件的问题。什么是工作流 - Backbone.js处理所有客户端数据操作,从couchDB发送/保存/获取/获取,从NODE.js后端提供JSON对象?
我使用Express Microframework构建HTTP服务器,安装了Cradle中间件以访问CouchDB NoSQL数据库。我成功地将客户端HTML(Jade模板引擎)中的数据发布到CouchDB数据库/文档,并能够通过Cradle中间件从服务器中检索这些数据。事情很棒。但这一切都是由Backend完成的。
我想将Backbone.js用于我的客户端Javascript。 Backbone.js正在寻找从HTTP服务器发回的JSON对象。 Cradle Middleware能够创建JSON对象,但只能将它们直接发送到Jade模板,我可以使用Jade语法循环迭代数据对象,但它仍然不符合我想要的Backbone.js处理所有数据条目。我意识到我需要通过ajax获取JSON obj(由HTTP生成的文件然后发送回客户端或将直接对象发送到客户端)。摇篮中间件无法做到这一点。
我对这个问题进行了更多的研究。我试过CouchApp,它做了我需要的。使用Backbone.js处理所有数据,从CouchDB数据库发送/保存/获取数据。但它在CouchApp中运行,它不是Express Node.js工作流程。 (也许我错了或者不知道它是如何工作的)
我试过了backbone-couchdb.js。我仔细阅读了细节,但仍然不知道它会帮助我得到我想要的东西。 (可能需要更多教程或代码示例)。我仍然认为我需要一个Backbone CouchDB驱动程序来连接这两个驱动程序并以某种方式通过NODE.js后端为它们提供服务。
有没有人可以告诉我Node.js如何服务JSON文件,backbone.js如何与CouchDB中的数据save / fetch / get进行交互?什么是最佳实践/工作流程?其他好的资源,代码示例,有用的工具?
答案 0 :(得分:1)
Cradle Middleware能够创建JSON对象,但只能将它们直接发送到Jade Template
这是不正确的。您可以在不渲染模板的情况下发回json。
function(req, res, next){
db.view('user/byUsername', { key: 'luke' }, function (err, doc) {
res.send(doc); // or res.json(doc);
});
}