REST API

Aus xinux.net
Zur Navigation springen Zur Suche springen

Allgemein

  • Representational State Transfer ist ein Paradigma für die Softwarearchitektur von verteilten Systemen.
  • Sie wird insbesondere für Webservices verwendet
  • REST ist eine Abstraktion der Struktur und des Verhaltens des World Wide Web.
  • Sie hat das Ziel, einen Architekturstil zu schaffen, der den Anforderungen des modernen Web besser genügt.
  • Manunterscheidet sich REST vor allem in der Forderung nach einer einheitlichen Schnittstelle von anderen Architekturstilen.

Zweck

  • Der Zweck von REST liegt schwerpunktmäßig auf der Maschine-zu-Maschine-Kommunikation.
  • Sie stellt eine einfache Alternative zu ähnlichen Verfahren wie SOAP und WSDL und dem verwandten Verfahren RPC dar.
  • Anders als bei vielen verwandten Architekturen kodiert REST keine Methodeninformation in den URI
  • Die URI gibt den Ort und Namen der Ressource, nicht aber die Funktionalität, die der Web-Dienst zu der Ressource anbietet.
  • Vorteil der REST liegt darin, dass im WWW bereits ein Großteil der für REST nötigen Infrastruktur vorhanden ist
  • Desweiteren gibt es viele Web-Dienste per se REST-konform sind.
  • Eine Ressource kann dabei über verschiedene Medientypen dargestellt werden, auch Repräsentation der Ressource genannt.
  • Ein Online-Dienst, der lediglich unveränderte Seiteninhalte nach dem Internetstandard HTTP anbietet, bereits REST-konform.
  • Dynamisch erzeugte Seiten folgen diesem Paradigma jedoch oft nicht.
  • So bieten beispielsweise Nachrichtenseiten sich ständig ändernde Informationen mit sowohl unterschiedlichem Format als auch Inhalt an, die nur schwer automatisch verarbeitet werden können.
  • Bliebe das Format unverändert, so wäre eine wichtige REST-Eigenschaft erfüllt.
  • So wäre eine Webseite, auf der ständig die aktuelle Uhrzeit in immer demselben Format abrufbar ist, REST-konform.
  • Die Bezeichnung „Representational State Transfer“ soll den Übergang vom aktuellen Zustand zum nächsten Zustand (state) einer Applikation verbildlichen.
  • Dieser Zustandsübergang erfolgt durch den Transfer der Daten, die den nächsten Zustand repräsentieren.