我有一个现有的RESTful API不能更改。现在我在做网络客户端的工作。
我想使用像backbone.js这样的库(这是第一次)。
以下是现有API的设计
1.) GET /persons -返回全部人员集合
2.) GET /persons?p1=a&p2=b (例如)-返回完整集合的子集,该子集与查询参数指定的条件匹配
3.) GET /persons/[id] -用id返回一个人
) POST /persons -修改集合(例如创建一个新的人)并返回特定的结果
问题:
{size: 1, persons: [{'id': 1, 'firstname': 'foo', 'lastname': 'bar'}]}有什么建议吗?
发布于 2013-01-02 16:58:16
对于不遵循主干的确切结构的API,您通常会在主干中重写fetch parse和sync的某些组合。主干网的设计使得覆盖这些东西很容易,因为这是一个常见的需求:
发布于 2013-01-02 18:26:58
对于#1,您将重写parse。例如,在您的Person集合中,您将放置以下方法:
parse: function(response) {
return response.persons;
}您基本上是在指示集合,该集合的属性可以在模型中找到(在本例中为“persons”)。
对于#2 (如前所述),您似乎需要更新sync。亨特在他的回答中提供了一个很好的链接,这应该是非常有帮助的。
https://stackoverflow.com/questions/14125002
复制相似问题