使用Backbone.js与服务器通信
Communicating with server with Backbone.js
我是第一次深入Backbone的网络开发新手。我一直在努力解决的一个主要问题(实际上,在过去的两天里,我花了很多时间研究,但都无济于事)是Backbone到底是如何与服务器通信的。
在我以前的项目中,我已经能够使用PHP和jQuery的$.getJSON
方法从数据库中获取数据。当我使用Backbone(例如myCollection.url = "todos.php"
)时,我也可以做到这一点。然而,在我看过的每一个教程、文档和示例代码中,集合的url总是设置为目录,urlRoot是directory/id(例如myCollection.url = "/todos"
和myModel.urlRoot = "/todos/5"
.
我的问题是,这究竟是如何管理的?它似乎比我在调用中添加GET参数的传统方式干净得多。起初我以为这是路由,但这似乎只与设置浏览器历史记录和其他内容有关。我看过的一些源代码使用了SLIMPHP和Rails(我都没有使用过),但我不知道这些部分是如何组合在一起的。
Backbone有自己的api用于与服务器通信,如获取、保存、destory。事实上,这些方法对jQuery的$.ajax也有同样的作用
var UserModel = Backbone.Model.extend({
url : "rootURL/user",
});
var user = new UserModel;
user.fetch(
data:{
userId : 1, //the webservice will be: rootURL/user?userId=1 GET;
}
success:function(model, response, options){
//callback
},
error:function(model, response, options){
//callback
},
);
但您也可以使用与jQuery中相同的方式与主干网应用程序中的服务器进行通信。例如:
var UserView = Backbone.View.extend({
render: function(){
//do something
}
getUser: function(userId){
$.get("rootURL/user",
{ userId : userId},
success:function(data){
//callback
}
);
}
});
相关文章:
- JavaScript可以与不同的服务器通信吗?
- 用于客户端-服务器通信和安全的 API 密钥
- 使用 node.js 进行客户端服务器通信
- 在 NodeJS 中进行客户端-服务器通信的简单方法
- 当本地主机服务器提供实际页面时,如何使用 socket.io 与另一台服务器通信
- PHP 聊天客户端-服务器通信
- 使用Backbone.js与服务器通信
- javascript和C#服务器通信
- 如何设置Websocket与客户端和服务器发送事件服务器通信
- 客户端JavaScript与c#服务器通信
- 提示客户端服务器通信的网站与负载的图像
- 是否可以或不写一个Chrome扩展与专用服务器通信
- 从浏览器与flash媒体服务器通信,而不是使用swf
- 打开多个选项卡,但只有一个选项卡与服务器通信
- 我如何允许节点pg模块与我的Windows postgresql服务器通信
- 主干网破坏无服务器通信
- 如何让Flash应用程序与服务器通信
- ajax客户端-服务器通信
- NodeJs 与 EC2 上的 ubuntu 服务器通信
- 套接字.IO客户端无法与服务器通信