$http
membuat panggilan AJAX untuk keperluan umum, di mana secara umum berarti itu bisa termasuk api tenang ditambah api tidak tenang .
dan $resource
dikhususkan untuk bagian tenang itu .
Restful Api menjadi lazim dalam beberapa tahun terakhir karena url lebih terorganisir daripada url acak yang dibuat oleh programmer.
Jika saya menggunakan RESTful API untuk membangun url, itu akan menjadi sesuatu seperti /api/cars/:carId
.
$resource
cara untuk mengambil data
angular.module('myApp', ['ngResource'])
// Service
.factory('FooService', ['$resource', function($resource) {
return $resource('/api/cars/:carId')
}]);
// Controller
.controller('MainController', ['FooService', function(FooService){
var self = this;
self.cars = FooService.query();
self.myCar = FooService.get('123');
}]);
Ini akan memberi Anda objek sumber daya , yang disertai dengan get
, save
, query
, remove
, delete
metode otomatis.
$http
cara untuk mengambil data
angular.module('myApp', [])
// Service
.factory('FooService', ['$http', function($http){
return {
query: function(){
return $http.get('/api/cars');
},
get: function(){
return $http.get('/api/cars/123');
}
// etc...
}
Lihat bagaimana kita perlu mendefinisikan setiap operasi umum pada RESTFul API . Juga satu perbedaan adalah yang $http
mengembalikan promise
saat $resource
mengembalikan objek. Ada juga plugin pihak ketiga untuk membantu Angular menangani RESTFul API seperti restangular
Jika API itu seperti /api/getcarsinfo
. Semua yang tersisa untuk kita gunakan $http
.