AngularJS AJAX - $http
- Pagina precedente Servizi AngularJS
- Pagina successiva Tabella AngularJS
$http è un servizio di AngularJS utilizzato per leggere dati da server remoti.
AngularJS $http
AngularJS $http
Il servizio invia una richiesta al server e restituisce una risposta.
Esempio
Inviare una richiesta semplice al server e visualizzare il risultato nel titolo:
<div ng-app="myApp" ng-controller="myCtrl"> <p>Il messaggio di benvenuto di oggi è:</p> <h1>{{myWelcome}}</h1> </div> <script> var app = angular.module('myApp', []); app.controller('myCtrl', function($scope, $http) { $http.get("welcome.htm") .then(function(response) { $scope.myWelcome = response.data; }); }); </script>
metodo
L'esempio sopra utilizza $http
del servizio .get
Metodo.
Il metodo .get è uno scorciatoia del servizio $http. Esistono diversi tipi di scorciatoie:
.delete()
.get()
.head()
.jsonp()
.patch()
.post()
.put()
Questi metodi sopra menzionati sono scorci per chiamare il servizio $http:
Esempio
var app = angular.module('myApp', []); app.controller('myCtrl', function($scope, $http) { $http({ method : "GET", url : "welcome.htm" }).then(function mySuccess(response) { $scope.myWelcome = response.data; }, function myError(response) { $scope.myWelcome = response.statusText; }); });
L'esempio sopra utilizza un oggetto come parametro per eseguire il servizio $http. L'oggetto specifica il metodo HTTP, l'URL, l'azione da eseguire con successo e l'azione da eseguire in caso di fallimento.
Proprietà
La risposta ricevuta dal server è un oggetto che ha le seguenti proprietà:
.config
Oggetto utilizzato per generare la richiesta.data
Stringa o oggetto, che trasporta la risposta ricevuta dal server.headers
La funzione per ottenere le informazioni di intestazione.status
Definisci il numero dello stato HTTP.statusText
Definisci la stringa dello stato HTTP
Esempio
var app = angular.module('myApp', []); app.controller('myCtrl', function($scope, $http) { $http.get("welcome.htm") .then(function(response) { $scope.content = response.data; $scope.statuscode = response.status; $scope.statustext = response.statusText; }); });
Per gestire gli errori, vai a .then
Aggiungi una funzione al metodo:
Esempio
var app = angular.module('myApp', []); app.controller('myCtrl', function($scope, $http) { $http.get("wrongfilename.htm") .then(function(response) { // Prima funzione gestisce il successo $scope.content = response.data; }, function(response) { // Seconda funzione gestisce gli errori $scope.content = "Qualcosa è andato storto"; }); });
JSON
I dati ottenuti dalla risposta dovrebbero essere in formato JSON.
JSON è un ottimo modo per trasmettere dati e facile da utilizzare in AngularJS o in qualsiasi altro JavaScript.
Esempio: su un server abbiamo un file che restituisce un oggetto JSON contenente 15 clienti, tutti questi sono racchiusi in un nome records
nell'array.
Clicca qui per visualizzare l'oggetto JSON.
Esempio
La direttiva ng-repeat è perfetta per iterare attraverso un array:
<div ng-app="myApp" ng-controller="customersCtrl"> <ul> <li ng-repeat="x in myData"> {{ x.Name + ', ' + x.Country }} </li> </ul> </div> <script> var app = angular.module('myApp', []); app.controller('customersCtrl', function($scope, $http) { $http.get("customers.php").then(function(response) {}} $scope.myData = response.data.records; }); }); </script>
Descrizione dell'applicazione:
L'applicazione definisce customersCtrl
controller, con scope
e http
oggetto.
$http
è un Oggetto XMLHttpRequest, utilizzato per richiedere dati esterni.
$http.get()
Letti da https://www.codew3c.com/angular/customers.php Dati JSON.
Dopo il successo, il controller crea un attributo nello scope myData
, che include dati JSON provenienti dal server.
- Pagina precedente Servizi AngularJS
- Pagina successiva Tabella AngularJS