我想使用backbone+nodejs+mysql制作一个非常简单的通讯录。
在实践的过程中已经使用nodejs连接到了mysql然后碰到以下疑问?
1.如何用接口的方式把数据返回出来 (已经完成)
2.如何在js中控制数据的增删查改 (已经完成)
3.backbone的数据层编写有什么规则吗 (已经完成)
...
我也自己百度了下,发现网上相关的知识非常少,自己后端没太多经验,如果谁有相关的教程也请提供下。
谢谢大家的帮助,上面的问题大致已经解决
但是又碰到了新的问题
使用backbone然后遵循RESTful规则来保存数据的时候,nodejs端无法获取数据,具体代码请看下面:
前端:
//添加并查询newPhone.create({ name : '李某某', phone : '12356125'},{ success : function(Collection,resp){ console.log(Collection.models) }})
后端:
.post(function(req,res,next){ //增加 if (req.method === "POST") { console.log(req.params) // {} console.log(req.body) // undefined console.log(req.query) // {} //无法获取传送过来的数据 res.jsonp({ return : false }) // 本来使用get的解析方式 // var pathname = req.params['0'], // name = pathname.split("/")[0], // phone = pathname.split("/")[1]; // model.addAddress(name, phone, function(data) { // if (data) { // res.jsonp(data) // } // }) }else{ next(); } })
请求
解决方案
如何用接口把数据返回?
根据 MVC 模式,接口其实就是使用路由分析将 url 解析到一个控制器(路由规则),自己可以写一个,很有趣。当然这种较为底层的封装完全没有必要,因为像 Connect Express 这样的 node web 框架都已经做好了。
还有推荐使用 Restful API,这样可以根据 web method 解析意图,所有请求,全部为资源,非常规范
js 控制数据的增删改查
有专门的库进行操作 https://github.com/dresende/node-orm2
backbone 数据层编写规则
ˊ_>ˋ不会啊