在AngularJS中主要使用$http服务与远程http服务器交互,其作用类似于jquery中的$.ajax服务:
- $http是AngularJS的一个核心服务,利用浏览器的xmlhttprequest或者via JSONP对象与远程HTTP服务器进行交互;
- 与$.ajax相同,支持多种method请求:get、post、put、delete等;
- controller中可通过与$scope同样的方式获取$http对象,形如:function controller($ http, $ scope){};
$http使用说明:
$http服务使用如下面代码所示:
// 1.5以下版本$http(config).success(function(data, status, headers, config){//请求成功执行代码}).error(function(data, status, headers, config){//请求失败执行代码})// 1.5以上版本$http(config).then(function successCallback(response){//请求成功执行代码},function errorCallback(response){//请求失败执行代码});
具体参数、方法说明:
配置参数:
- config是请求的配置参数总集,格式为json;
- 包含的配置项包括:
- method:字符串类型,请求方式如"GET","POST","DELETE"等;
- url:字符串类型,请求的url地址;
- params:json类型,请求参数,将在url上被拼接成?key=value的形式;
- data:json类型,请求数据,将放在请求内发送至服务器;
- cache:bool类型,true表示http GET请求时采用默认的$http cache,否则使用$cacheFactory的实例;
- timeout:整数类型,超时时间;
回调函数:
- success是请求成功后的回调函数;
- error是请求失败后的回调函数;
- data是响应体;
- status是相应的状态值;
- headers是获取getter的函数;
- config是请求中的config json对象;
method属性可以作为config配置参数中的一个属性,也可以直接作为方法调用,如:
$http.post(url, data, config)
$http使用范例:
var searchOplog = function ($http, table, btn) { $http({ url: 'data/oplog.json', method: 'GET' }).then(function successCallback(response) { console.log('get Oplog success:', response); table.init(response.data); btn.button('reset'); btn.dequeue(); }, function errorCallback(response) { console.log('errorCallback Response is:', response); table.init(); btn.button('reset'); btn.dequeue(); });};
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。