REST REST

REST ist eine Art, Web-APIs zu bauen, bei der jedes Element eine eigene Adresse bekommt und mit denselben wenigen Standardaktionen bearbeitet wird.

Auch bekannt als REST-API RESTful-API REST-Webdienst

Definition

REST ist ein Baustil für eine API, und eine API ist schlicht der Weg, auf dem ein Programm ein anderes um Informationen bittet. Die Regel dahinter passt in eine einzige Zeile. Jedes Element, das ein System hält, bekommt eine eigene Web-Adresse, und auf diese Adresse wirken dieselben wenigen Standardaktionen, die das Web ohnehin benutzt.

Stellen Sie sich die Patientenliste einer Praxis vor, bei der eine Adresse alle Patienten meint. Dieselbe Adresse mit einer Nummer am Ende meint einen bestimmten Patienten, und das ist die ganze Idee. Zum Lesen schickt das Programm eine Leseanfrage, und zum Anlegen eine Anlegeanfrage. Zum Ersetzen der Akte folgt eine Ersetzenanfrage, zum Löschen eine Löschanfrage. Diese vier Verben hat nicht die Praxissoftware erfunden, denn es sind die gewöhnlichen Anweisungen, die jeder Browser ohnehin sendet.

Der Gewinn ist, dass sich alles erraten lässt. Wer eine REST-API benutzt hat, versteht die nächste meist ohne Handbuch, und das spart Ihnen echtes Geld. Ein neuer Lieferant ist schneller angebunden, und wer Ihr System in drei Jahren übernimmt, muss keine private Sprache lernen, die sich jemand ausgedacht hat. Schon deshalb sprechen die meisten Webanwendungen von Linkysoft REST.

REST hat eine Schwachstelle, die man meist spät entdeckt, weil jede Adresse nur eine Art von Sache liefert. Ein Bildschirm mit Patient, den letzten zehn Besuchen und den offenen Rechnungen braucht deshalb drei oder vier getrennte Anfragen. Am Büroanschluss merkt das niemand, aber auf einem Handy mit einem Balken Empfang ist es der Unterschied zwischen einem Bildschirm, der aufgeht, und einem, der aufgibt. Darum legen wir beim Bau einer mobilen App meist eine zusätzliche Adresse an, die einen ganzen Bildschirm in einer einzigen Antwort liefert. Die einfachen Adressen bleiben für alles andere bestehen.

Noch etwas, bevor Sie etwas beauftragen, denn REST sagt nichts darüber, wer fragen darf. Jede Adresse ist eine Tür, also muss jede Tür selbst prüfen, wer klopft und was er sehen darf. Fehlt diese Prüfung an einer einzigen Adresse, ist das einer der häufigsten Wege, auf denen Daten abfließen. Deshalb liest eine Sicherheitsprüfung von Linkysoft die Adressliste Zeile für Zeile. Wenn Sie also für eine API bezahlen, lassen Sie sich diese Liste zeigen und fragen Sie, wer sie getestet hat.

Fragen zu REST

Wofür steht REST eigentlich?
Representational State Transfer. Der volle Name hilft niemandem. Im Alltag heißt er, dass jedes Element eine eigene Web-Adresse hat und mit Standardaktionen bearbeitet wird.
Ist REST dasselbe wie eine API?
Nein. REST ist ein Baustil für eine API und mit Abstand der häufigste. Es gibt andere, etwa GraphQL und SOAP, und ein System kann mehrere gleichzeitig anbieten.
Warum bevorzugen Entwickler REST?
Weil es vorhersehbar ist. Wer eine REST-API kennt, errät meist die nächste, und das senkt Zeit und Kosten jeder neuen Anbindung, die Sie bezahlen.
Ist eine REST-API von Haus aus sicher?
Nein. REST sagt nichts über Rechte. Jede Adresse muss selbst prüfen, wer fragt und was er sehen darf, und jede muss einzeln getestet werden.
Kann eine REST-API auf dem Handy langsam sein?
Ja. Ein Bildschirm, der vier Adressen braucht, macht vier getrennte Wege. Bei schwachem Empfang summiert sich das, deshalb bekommen volle Bildschirme oft eine eigene kombinierte Adresse.

Immer noch unsicher, was das für Ihr Projekt bedeutet?

Sagen Sie uns, was Sie bauen, und wir antworten in klarer Sprache.