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()方法用来在服
   151   152   153   154   155   156   157   158   159   160   161