我正在使用Node重新编写使用Node.js的现有网站.
该站点的前端将使用Backbone JS,因此我需要拥有符合本机Backbone同步的所有必要路由.现在,大多数URL的客户端和Backbone同步都是一样的.但它们不适用于常规GET,因为它们需要返回JSON.
所以我在想,在Backbone中添加扩展到模型/集合URL(例如.json),在Express中添加扩展以便为每条路由添加此扩展:
app.get('/p/:topCategory/:category/:product.:format',function(req,res) { ... });
if(req.params.id ==’json’)比我们发送JSON,否则我们渲染HTML?
还是有更好的方法?请帮忙.
解决方法
更好的方法是使用Express 3.x中的内容协商功能,即res.format:
https://github.com/visionmedia/express/blob/master/lib/response.js#L299-378
res.format({ text: function(){ res.send('hey'); },html: function(){ res.send('<p>hey</p>'); },json: function(){ res.send({ message: 'hey' }); } });
你接近也没关系,Yammer为前.使用相同的方法:http://developer.yammer.com/api/#message-viewing
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。