È possibile utilizzare resources o creare servizi che implementano le chiamate http.
Se si desidera utilizzare le risorse, ricordate:
- di includere il file angolare resource.js che potete trovare here
- includere nella vostra dichiarazione del modulo per includere il modulo ngResource dipendenze in questo modo :
angular.module('myApp',['ngResource'])
Dopo di che è possibile dichiarare una risorsa in questo modo:
function MyController($scope, $resource){
var User = $resource('/user/:userId', {userId:'@id'});
var user = User.get({userId:123}, function() {
user.abc = true;
user.$save();
});
}
In alternativa, utilizzare i servizi, se avete bisogno di un livello molto più profondo di granularità quali
angular.module('myApp')
.factory('MyAPIService', function($http){
var apiurl, myData;
return {
getData: function(){
$http.get(apiurl)
.success(function(data, status, config, headers){
myData = data;
})
.error(function(){ //handler errors here
});
},
data: function() { return myData; }
};
});
trovo servizi di essere grande a causa della capacità di condividere i dati tra i controller, in modo da poterli immettere in un controllore come così
myapp.controller('MyController', function($scope, MyAPIService){
$scope.data = MyAPIService.data();
// etc.
});
fonte
2013-08-30 09:47:38
ho modificato la mia risposta per includere i requisiti e l'esempio per l'utilizzo delle risorse. –