RESTful URL只是使用RESTful原则的Web服务的URL。谷歌可以比我在这里解释得更好,但基本的想法是将各种REST“动词”(GET,POST,DELETE等)集成到API中。举例来说,这里是一个假想的用户API一套基于REST的动词+网址:
GET /user - returns a list of users
POST /user - creates a new user
DELETE /user/5 - deletes the user with ID 5
PUT /user/5 - updates/edits the user with ID 5
骨干效果特别好,如果你的服务器端的设计相似,但它不是必需的。
如果你的服务器端API是不是平安,你只需要重写你的模型和集合(最有可能的destroy
,fetch
,save
,url
,parse
,sync
,并toJSON
)采取一切适当的某些方法为您的服务器。
例如,您可能要覆盖模型的url
方法,使其恢复服务器的(unRESTful)网址:
url: function() {
return 'www.example.com/some/very/not/RESTful/' + this.id + '/URL/example';
}
或者,如果你的服务器有一个“信封”返回你的对象,例如:
{
type: 'envelope',
payload: {
type: 'user',
name: 'Bob',
id: 5,
}
}
可以修改解析剥离出来:
parse: function(original) {
return original.payload;
}
至于“我如何参考我的postgres表”,如果您重写适当的方法,然后在模型和集合上调用相应的骨干动作方法(fetch
/save
/destroy
),Backbone会将AJAX请求发送到您的URL在您的url
覆盖中定义。然后,您的服务器可以使用您想要解释该请求的任何语言,并在您的PostgreSQL数据库上执行相应的操作。