$http

$http 服务是核服务,用于与服务器通信,通过浏览器的 XMLHttpRequest 对象或通过 jsonp
要使用 $http 服务需要在 controller 中注入 $http 模块

$http 使用 promise 规范

Basis

<div ng-app="myApp" ng-controller="myAppCon">
 	<p>{{ text }}</p>
</div>
<script>
	angular.module('myApp', [])
		.controller('myAppCon', ['$scope','$http', function($scope,$http) {
		  	$scope.src = "jscss.cc.ico";
		  	$http({
		  		url : '/ajax/api/path',
		  		method: 'GET',
		  	}).then(function successCallback(response) {
		    	return response.data;
			}).then(function(data){
				$scope.text = data;
			}).catch(function(error){
				console.log(error);
			});
		}]);
</script>

$http method

设置请求的方式
属性 支持的方式
method get , post , jsonp , head , put , delete , patch

$http headers

设置请求头信息
var req = {
	method: 'GET',
	url: '/ajax/api/path',
	headers: {
		'Content-Type': 'pplication/json'
	}
}

$http(req).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http data

post,put,delete,patch 请求时传递的参数
var req = {
	method: 'POST',
	url: '/ajax/api/path',
	headers: {
		'Content-Type': 'pplication/json'
	},
	data : {
		"name" : "1",
		"text" : "2",
		"message" : "3"
	}
}

$http(req).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

注意 : data 信息在 get,jsonp,head 请求下才无效


下面的方式都是对 $http 的封装

$http.get

$http.get("/ajax/api/path",{ 
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.post

$http.post("/ajax/api/path",data,{
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.jsonp

$http.jsonp("/ajax/api/path").then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.put

$http.put("/ajax/api/path",data,{
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.delete

$http.delete("/ajax/api/path",data,{
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.patch

$http.patch("/ajax/api/path",data,{
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});

$http.head

$http.head("/ajax/api/path",{
	/* config */ 
}).then(function(response){
	//请求成功时
}, function(error){
	//请求失败时
});