Page 156 - AngularJS权威教程
P. 156
136 第 15 章 同外界通信:XHR 和服务器通信
像上面那样不定义具体的参数,get()请求通常被用来获取单个资源。
// 发起一个请求:
// GET /api/users
User.get(function(resp) {
// 处理响应成功
}, function(err) {
// 处理错误
});
如果参数中传入了具名参数(我们例子中的参数是id),那么get()方法会向包含id的URL
发送请求:
// 发起一个请求:
// GET /api/users/123
User.get({
id: '123'
}, function(resp) {
// 处理响应成功
}, function(err) {
// 处理错误
});
2. query(params, successFn, errorFn)
query向指定URL发送一个GET请求,并期望返回一个JSON格式的资源对象集合。
// 发起一个请求:
// GET /api/users
User.query(function(users) {
// 读取集合中第一个用户
var user = users[0];
});
query()和get()方法之间唯一的区别是AngularJS期望query()方法返回数组。
15.9.2 基于非HTTP GET类型的方法
三个基于非HTTP GET类型的方法可以接受下面四个参数。
params(对象)
随请求一起发送的参数。它们可以是URL中的具名参数,也可以是查询参数。
postData(对象)
这个对象是随请求发送的数据体。
successFn(函数)
当HTTP响应成功时的回调函数。
errorFn(函数)
当HTTP响应非成功时的回调函数。
1. save(params, payload, successFn, errorFn)
save方法向指定URL发送一个POST请求,并用数据体来生成请求体。save()方法用来在服