REST (Representational State Transfer) ist ein Softwarearchitekturstil, der oft verwendet wird, um Webdienste zu erstellen. REST verwendet das HTTP-Protokoll, um Anfragen und Antworten zu senden und definiert eine Reihe von Konventionen für den Aufbau von APIs. Eine API, die diese Konventionen befolgt, wird als RESTful-API bezeichnet.
REST basiert auf einigen grundlegenden Prinzipien:
Client-Server-Architektur: REST trennt die Benutzerinterface-Komponenten von den Datenlager-Komponenten. Dies verbessert die Portabilität der Benutzeroberfläche und die Skalierbarkeit durch Vereinfachung der Serverkomponenten.
Zustandslosigkeit: Jede Anfrage von Client zu Server muss alle Informationen enthalten, die zum Verständnis und zur Bearbeitung der Anfrage erforderlich sind. Das bedeutet, dass der Server keinen Kontext zwischen zwei Anfragen speichern muss.
Cachebarkeit: In REST können die Antworten vom Client gecacht werden. Dies verbessert die Leistung der Anwendung, da es die Anzahl der Anfragen an den Server reduziert.
Einheitliche Schnittstelle: Um die Kommunikation zwischen Anwendungen zu vereinfachen, legt REST eine einheitliche Schnittstelle fest. Dies erleichtert die Interaktion und erhöht die Austauschbarkeit der Komponenten.