Page 160 - AngularJS权威教程
P. 160

140  第 15 章  同外界通信:XHR 和服务器通信


                     }
                 });
                 6. transformResponse(函数或函数数组)

                 这个函数或函数数组用来对HTTP响应体和头信息进行转换,并返回转换后的版本。通常用
             来进行反序列化。

                 var User = $resource('/api/users/:id',{
                     id:'@'
                 }, {
                     sendEmail: {
                         method: 'PUT',
                         transformResponse: function(data, headerFn)
                             {
                             // Return modified data for the response
                             return JSON.parse(data);
                         }
                     }
                 });

                 7. cache(布尔型或缓存对象)
                 如果cache属性被设置为true,那么AngularJS会用默认的$http缓存对GET请求进行缓存。
             如果cache属性被设置为$cacheFactory对象的一个实例,那么这个对象会用来对GET请求进行
             缓存。
                 如果cache属性被设置为false,那么$resource服务所发送的请求不会被缓存。

                 8. timeout(数值型或promise对象)
                 如果timeout被设置为一个数值,那么请求将会在推迟timeout指定的毫秒数后再发送。如
             果被设置为一个promise对象,那么当该promise对象被resolve时,请求会被中止。

                 9. withCredentials(布尔型)
                 如果该属性被设置为true,那么XHR请求对象中会设置withCredentials标记。

                 默认情况下,CORS请求不会发送cookie,而withCredentials标记会在请求中加入Access-
             Control-Allow-Credentials头,这样请求就会携带目标域的cookie。
                 10. responseType(字符串)

                 responseType选项会在请求中设置XMLHttpRequestResponseType属性。我们可以使用以下
             HTTP请求类型之一:
                  " "(字符串,默认);
                  "arraybuffer"(ArrayBuffer);
                  "blob"(blob对象);
                  "document"(HTTP文档);
                  "json"(从JSON对象解析而来的JSON字符串);
                  "text"(字符串);
                  "moz-blob"(Firefox的接收进度事件);
                  "moz-chunked-text"(文本流);
   155   156   157   158   159   160   161   162   163   164   165