Dies bedeutet, dass Sie den Zugriff auf Objekte auf verschiedene Arten ermöglichen. In Ihren Beispielen können Sie den Benutzern das Erstellen, Lesen, Aktualisieren oder Löschen von Objekten (in der Regel mit CRUD abgekürzt) mithilfe des HTTP-Protokolls über eine vordefinierte Methode zur Interaktion mit Ihren Objekten (eine API ) ermöglichen.
Diese API kann sich an eine Reihe von Regeln halten - z. B. verwenden RESTful- APIs HTTP-Verben , um bestimmte Aktionen an Objekten auszuführen, und sie halten sich an einige Prinzipien , die festlegen, wie Ressourcen identifiziert / dargestellt werden sollen und wie sie durch diese Darstellungen manipuliert werden sollen.
Nehmen wir an, Sie haben im Kontext einer Webanwendung Blogeinträge in Ihrer Datenbank gespeichert. Sie möchten, dass die Benutzer Ihrer Anwendung mit diesen Posts etwas anfangen können. Sie müssen nicht unbedingt Ihre Website verwenden , sondern können auch eine eigene Anwendung verwenden, die eine Verbindung zu Ihrer Anwendung herstellt (z. B. ein Blog-Reader-Programm).
Als Eigentümer Ihrer Anwendung können Sie eine Schnittstelle definieren , über die auf Ihre Anwendung zugegriffen werden kann. Beispielsweise möchten Sie möglicherweise eine Option hinzufügen, mit der einige Benutzer Blogeinträge lesen oder schreiben können. Die Oberfläche könnte ungefähr so aussehen (ein Beispiel für eine komplexere API finden Sie in der API-Definition von Twitter ):
- Wenn in
GET /posts/{number} HTTP/1.1
Ihrer Webanwendung eine angefordert wird, stellen Sie eine Darstellung Ihres Post-Objekts mit einer ID {number}
in einem vordefinierten Format bereit
Beachten Sie, dass Sie weder ein tatsächliches Datenbankobjekt noch Ihr Anwendungsobjekt bereitstellen. Sie geben eine Darstellung Ihres Objekts
- Wenn ein
POST /posts HTTP/1.1
mit einem title={text1}&body={text2}
in Ihrer Webanwendung veröffentlicht wird, erstellen Sie ein neues Veröffentlichungsobjekt mit {text1}
dem Titel , das den Inhalt des Objekts enthält {text2}
, und geben einen ID-Wert für die neu erstellte Veröffentlichung zurück
Auch hier gestatten Sie dem Benutzer die Manipulation von Darstellungen Ihrer Objekte. Der Benutzer muss nicht wissen, wie Ihre Objekte tatsächlich aussehen (dies wird durch die Benutzeroberfläche vom Benutzer abstrahiert ).
Durch das Anzeigen des Objekts erhält der Benutzer eine Benutzeroberfläche, über die er auf Ihre Objekte zugreifen und diese bearbeiten kann. Wenn diese Schnittstelle einige zusätzliche vordefinierte Bedingungen hinsichtlich der Repräsentation des Objekts und der Zustände der Anwendung erfüllt, die ihre Objekte verfügbar macht, wird diese Schnittstelle als REST-API (oder RESTful-API) bezeichnet.