REST
REST beschreibt Regeln für verteilte Schnittstellen. Ressourcen, zustandslose Anfragen und Verknüpfungen gehören zum Architekturansatz.
Ressourcen über eine einheitliche Schnittstelle nutzen
REST steht für Representational State Transfer und bezeichnet einen Architekturstil. Anwendungen tauschen Darstellungen von Ressourcen aus, etwa den aktuellen Stand eines Projekts. Zu den Regeln gehören die Trennung von Client und Server, zustandslose Anfragen, gekennzeichnete Cachebarkeit und eine einheitliche Schnittstelle. Verknüpfungen in Darstellungen führen zu weiteren möglichen Schritten; eine HTTP-Adresse mit JSON-Antwort allein erfüllt diese Regeln noch nicht.
In einem fiktiven Projektportal fragt die Anwendung mit GET /projects/P-42 eine Projektdarstellung ab. Diese enthält auch einen Verweis auf /projects/P-42/tasks, über den die zugehörigen Aufgaben erreichbar sein sollen. Beide Pfade sind eigene Entwurfsbeispiele. Die Anfrage muss die Informationen enthalten, die der Server zum Verstehen benötigt; er soll dafür keinen vorausgehenden Dialog mit diesem Client rekonstruieren müssen. Projektdaten dürfen trotzdem dauerhaft gespeichert sein. Zustandslos beschreibt hier die Kommunikation, nicht das Fehlen einer Datenbank.
Für ein Integrationsteam ist deshalb zu prüfen, wie Ressourcen, Verweise, Berechtigungen und die Wiederverwendung von Antworten tatsächlich geregelt sind. Das Etikett REST allein beantwortet diese Fragen nicht.
Quellen
Verwandte Begriffe
- APIEine API legt fest, wie Software Funktionen oder Daten anderer Software nutzen kann.
- GraphQLGraphQL lässt Anwendungen Felder über ein typisiertes API-Schema anfragen. Der Server bleibt für Datenzugriff und Berechtigungen verantwortlich.
- OpenAPIOpenAPI beschreibt HTTP-Schnittstellen maschinenlesbar: mit Pfaden, Parametern und Antworten. Beschreibung und laufende Umsetzung müssen übereinstimmen.
- Server-Sent EventsServer-Sent Events übertragen über eine HTTP-Verbindung Textmeldungen vom Server zum Client, etwa zum Fortschritt eines Hintergrundauftrags.
- Entity TagEin ETag kennzeichnet eine bestimmte Darstellungsversion einer HTTP-Ressource und ermöglicht bedingte Abrufe oder Änderungen.
- Cross-Origin Resource SharingCORS steuert im Browser die Freigabe von Antworten über Origin-Grenzen. Es ersetzt weder die Anmeldung noch die Berechtigungsprüfung einer API.
Ihr Vorhaben mit ASES
Beschreiben Sie uns Ihr Vorhaben. Wir melden uns mit einer ersten Einschätzung.