一聚教程网:一个值得你收藏的教程网站

热门教程

AngularJS使用$http配置对象方式与服务端交互方法

时间:2022-06-25 15:49:10 编辑:袖梨 来源:一聚教程网

如下所示:

//$http函数的形参就是一个配置对象
$http({
  //method属性表示HTTP请求时的方式,它是一个字符串,值是POST、GET、JSONP、DELETE、PUT和HEAD其中之一
  method:
  //url表示向服务器请求的地址,是一个相对或者绝对的字符串形式
  url:
  //data属性是一个对象,该对象将作为消息体的一部分发送给服务端,常用于POST或PUT数据时使用;
  data:
  //params属性是一个字符串对象,当发送HTTP请求时,如果是对象,将自动按json格式进行序列化,并追加到URL后面,作为发送数据的一部分,传递给服务器。
  params:
  //用于对请求体信息和请求体进行序列化转换,并生成一个数组发送给服务端
  transformRequest:
  //用于对响应体头信息和响应体进行序列化的反转,其实质就是解析服务器发送来的被序列化后的数据
  transformResponse:
  //表示是否对HTTP请求进行缓存,如果该值是true,表示需要缓存,否则不缓存
  cache:
  //表示延迟发送HTTP请求的的时间,单位是毫秒
  timeout:
})
.success(fn1)
.error(fn2)

//--------------------------------------------

执行$http函数后,它返回的内容其实是一个promise对象,因此可以直接通过连式的写法调用then方法获取成功和异常后的数据。
$http({
  //配置对象
})
.success(fn1)
.error(fn2)
//等价于
$http({
  //配置对象
})
.then(fn1,fn2)

其中fn1和fn2分别表示请求成功和错误时的返回函数。

需要说明的是,虽然两者的功能相同,但使用then方法可以接收到服务端的完整响应对象,而success和error方法只是接收解析并处理后的响应对象,也就是说,then方法获取的返回对象更原始和完整。

热门栏目