Junior
Was ist eine REST-API?
sobes.tech KI
Antwort von AI
REST API ist ein architektonischer Stil zum Aufbau verteilter Systeme. Die Grundprinzipien von REST:
- Zustandslosigkeit: Jede Anfrage des Clients an den Server muss alle notwendigen Informationen enthalten, um sie zu verarbeiten. Der Server speichert keinen Zustand des Clients zwischen den Anfragen.
- Client-Server: Klare Trennung der Verantwortlichkeiten zwischen Client und Server. Der Client sendet Anfragen, der Server verarbeitet sie.
- Cachefähig: Der Server muss angeben, ob die Antworten vom Client oder Zwischenstationen zwischengespeichert werden dürfen.
- Schichtensystem: Der Client interagiert nicht unbedingt direkt mit dem Endserver; er kann über Zwischenlayer (Proxys, Load Balancer) interagieren.
- Einheitliche Schnittstelle: Ein einheitlicher und standardisierter Weg der Interaktion zwischen Client und Server. Dieser Grundsatz umfasst:
- Ressourcenidentifikation: Ressourcen (Daten) werden über URLs identifiziert.
- Manipulation von Ressourcen durch Repräsentationen: Der Client interagiert mit Ressourcen, indem er ihre Repräsentationen (z.B. JSON, XML) erhält und neue Repräsentationen zum Ändern sendet.
- Selbstbeschreibende Nachrichten: Jede Nachricht enthält genügend Informationen, um sie zu verarbeiten.
- HATEOAS (Hypertext As The Engine Of Application State): Ressourcen sollten Links (Hyperlinks) zu verwandten Ressourcen und verfügbaren Aktionen enthalten.
REST API verwendet in der Regel standardmäßige HTTP-Methoden, um Operationen an Ressourcen durchzuführen:
- GET: Abrufen einer Ressource oder Sammlung von Ressourcen.
- POST: Erstellen einer neuen Ressource.
- PUT: Vollständige Aktualisierung einer bestehenden Ressource.
- PATCH: Teilaktualisierung einer bestehenden Ressource.
- DELETE: Löschen einer Ressource.
Beispiel für eine JSON-Repräsentation einer Ressource:
{
"id": 1, // Identifikator
"name": "Resource Name", // Name der Ressource
"description": "Detailed description of the resource." // Beschreibung der Ressource
}
Tests für REST API umfassen die Überprüfung:
- Funktionalität (Korrektheit der Antworten auf Anfragen).
- Fehlerbehandlung.
- Leistung.
- Sicherheit.
- Übereinstimmung mit der Dokumentation.