$httpसामान्य उद्देश्य AJAX कॉल करता है, जिसमें सामान्य का अर्थ है इसमें RESTful api plus गैर- Restful api शामिल हो सकते हैं ।
और $resourceउस रेस्टफुल भाग के लिए विशिष्ट है ।
रेस्टेबल आपी ने हाल के वर्षों में प्रचलित किया क्योंकि प्रोग्रामर द्वारा बनाए गए यादृच्छिक यूआरएल के बजाय यूआरएल बेहतर तरीके से व्यवस्थित किया गया है।
यदि मैं url के निर्माण के लिए RESTful API का उपयोग करता हूं , तो यह कुछ ऐसा होगा /api/cars/:carId।
$resource डेटा लाने का तरीका
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');
}]);
यह आपको एक दे देंगे संसाधन वस्तु है, जो साथ साथ है get, save, query, remove, deleteतरीकों स्वचालित रूप से।
$http डेटा लाने का तरीका
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...
}
देखें कि हमें RESTFul API पर प्रत्येक सामान्य ऑपरेशन को कैसे परिभाषित करना है । एक अंतर यह भी है कि किसी वस्तु को $httpवापस promiseकरते समय $resourceरिटर्न। रेस्टफुल जैसे RESTFul एपीआई के साथ कोणीय सौदे में मदद करने के लिए तीसरे पक्ष के प्लगइन्स भी हैं
अगर एपीआई कुछ ऐसा है /api/getcarsinfo। हमारे लिए सभी का उपयोग करना है $http।