Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 2 REST Web Services (1) REpresentational State Transfer Architektur Architekturstil für verteilte Systeme, entwickelt von Roy Fielding (2000) Das World Wide Web stellt eine Implementierung einer REST-Architektur dar. Quelle:
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 3 REST Web Services (2) Es gibt keine Methodenaufrufe wie bei SOAP Web Services. REST basiert auf der Repräsentation von Ressourcen (Objekten). Die Objekte werden durch eindeutige URLs/URIs identifiziert. Der Medientyp der Ressource wird mit Hilfe des HTTP-Content-Type- Headers bestimmt (HTML, XML, JPG, PNG, JSON,…). Ressourcen können Links zu anderen Ressourcen enthalten. Ein Client fordert eine CRUD-Operation (Create, Read, Update, Delete) für ein Objekt auf dem Server an und der Server gibt die Daten gemäß Anforderung zurück (Repräsentation). Für die CRUD Operationen stehen die Request-Operationen des HTTP-Protokolls zur Verfügung: GET, PUT, POST, DELETE. Der Service ist zustandslos.
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 4 HTTP Commands GETAbfrage der Repräsentation einer Ressource POSTHinzufügung eines neuen Objekts zu einer Ressource PUTUpdate der Ressource, aber auch zur Erzeugung einer neuen Ressource DELETELöschen einer spezifischen Ressource
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 5 Beispiel: AktionOperationURI Gibt eine Liste aller Autoren zurück GET./Autoren Fügt einen neuen Autor ein POST./Autoren Gibt einen Autor mit der ID=id zurück GET./Autoren/id Änderung des Autors mit der ID=id PUT./Autoren/id Löschen des Autors mit der ID=id DELETE./Autoren/id Gibt die Werke des Autors zurück GET./Autoren/id/Werke …
Entwicklung verteilter Anwendungen II, SS 13 Prof. Dr. Herrad Schmidt SS 13 Kapitel 4 Folie 6 Solution 4_RESTService: