AngularJS $resource
 
AngularJS $resource ist ein Dienst, mit dem Sie Angular-freundlicher auf RESTful-Webdienste zugreifen können. $resource kümmert sich um die Serialisierung und Deserialisierung von Daten, damit Sie sich auf die Anwendungslogik konzentrieren können.
Darüber hinaus bietet AngularJS $resource Funktionen zur Kommunikation mit RESTful APIs. Diese Funktionen vereinfachen das Abrufen von Daten aus verschiedenen Quellen und unterstützen alle HTTP-Methoden.
Standardmäßig führt $resource die folgenden fünf REST-Operationen aus.
- Abrufen einer Liste von Elementen
- Einen Gegenstand bekommen
- Artikel einfügen
- Aktualisieren eines Artikels
- Löschen eines Artikels
AngularJS $resource vs. $http
Der Dienst $resource ist eine Möglichkeit, Remote-Ressourcen wie REST-Endpunkte abzufragen. Es ist ein AngularJS-Dienst, der Funktionen zum Erstellen von Objekten bereitstellt, die Remote-Daten darstellen, und zum Ausführen von CRUD-Operationen an diesen Objekten.
$http ist ein AngularJS-Dienst, der Funktionen bereitstellt, um AJAX-Anfragen an den Server zu stellen. Es kann mit jeder AJAX-Bibliothek verwendet werden, aber es muss mit dem $resource-Dienst von AngularJS verwendet werden, um die volle CRUD-Funktionalität zu erhalten.
$resource ist eine Variable, die einmal deklariert und dann zum Aufrufen von get, post, query, remove und delete über unseren Controller/Dienst verwendet wird. Die $resource enthält alle praktischen eingebauten Methoden, was ein großartiges Feature ist.
Wir müssen keinen sich wiederholenden Code schreiben, wenn wir mit $resource auf die REST-API zugreifen, wodurch wir unsere Aufrufe oberflächlicher und relevanter machen können.
Beispiel für AngularJS $resource
JavaScript-Code:
var app = angular.module('plunker', ['ngResource']);
app.factory('demo', function($resource) {
  var url = 'sample.json';
  var res = $resource(url, null, {
	query: {
		isArray: true,
	  transformResponse: function(data) {
		var items = angular.fromJson(data);
		var models = [];
			class Person {
			constructor(config) {
		   this.name=config.name;
			   }
			 sayHello() {
			   }                        }
			 angular.forEach(items, function(item) {
		  models.push(new Person(item));
		});
		console.log("models: ", models);
		return models;
	  }
	}
  });
  return res;
});
app.controller('MainCtrl', function($scope, demo) {
  demo.query()
	.$promise.then(function (data) {
	  $scope.names = data;
	});
});
HTML Quelltext:
<!DOCTYPE html>
<html ng-app="plunker">
  <head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <link rel="stylesheet" href="style.css" />
    <script data-require="angular.js@1.3.x" src="https://code.angularjs.org/1.3.14/angular.js" data-semver="1.3.14"></script>
    <script data-require="angular-resource@1.3.x" data-semver="1.3.14" src="http://code.angularjs.org/1.3.14/angular-resource.js"></script>
    <script src="app.js"></script>
  </head>
<body ng-controller="MainCtrl">
  Hello.
  <ul>
    <li ng-repeat="n in names">
      {{n.name}}
    </li>
  </ul>
</body>
</html>
Es ist ein leistungsstarkes und hilfreiches Tool für Entwickler, das den Prozess der Datenabfrage vom Server vereinfacht.
Es wird am häufigsten für CRUD-Operationen auf RESTful-APIs verwendet, kann aber auch zum Abrufen von Daten von beliebigen APIs verwendet werden.
Der Hauptvorteil von AngularJS $resource besteht darin, dass es Zeit spart und das Codieren vereinfacht, indem es die Notwendigkeit reduziert, Boilerplate-Code zu schreiben.
Klicken Sie hier, um die Live-Demonstration des Codes wie oben erwähnt zu überprüfen.
Muhammad Adil is a seasoned programmer and writer who has experience in various fields. He has been programming for over 5 years and have always loved the thrill of solving complex problems. He has skilled in PHP, Python, C++, Java, JavaScript, Ruby on Rails, AngularJS, ReactJS, HTML5 and CSS3. He enjoys putting his experience and knowledge into words.
Facebook