© Bloomicon/Shutterstock.com
RESTful APIs mit dem Webframework Flask

Djangos kleiner Bruder


Das leichtgewichtige Python-Framework Flask verfolgt einen minimalistischen Ansatz und eignet sich mit kurzen Reaktionszeiten gut für Microservices und Programmierschnittstellen. RESTful APIs haben sich mittlerweile als Standard für die Kommunikation unter Maschinen durchgesetzt. Dieser Artikel zeigt, wie Sie solche Interfaces mit Flask aufsetzen können, inklusive objektrelationaler Datenbankanbindung mit SQLAlchemy.

Programmierschnittstellen spielen heutzutage eine große Rolle im Internet. Neben der normalen Benutzung über Seiten im Browser wird mittlerweile zu jedem guten Web-Service ein API (Application Programming Interface) angeboten, über das Anwender alternativ auf Angebote zugreifen können. Das ist zum Beispiel der Fall bei Twitter, Wikipedia, GitHub, DigitalOcean und vielen anderen, und auch CMS-Systeme wie WordPress lassen sich über externe Schnittstellen ansprechen und nutzen. Andere Services wie zum Beispiel Amazons Objektspeicher S3 sind als Geschäftsmodell direkt als API aufgesetzt. Auch wenn es nicht ausgeschlossen ist, sind diese als Interface aufgesetzten Zugangslösungen eigentlich nicht für den händischen Gebrauch mit bestimmten Standardwerkzeugen gedacht, sondern dienen vor allem dazu, mittels speziell dafür geschriebener Software angesprochen zu werden. Die angebotenen APIs richten sich dabei vor allem an Entwickler von Endanwenderlösungen, um für den verfügbaren Service speziell konfektionierte Applikationen herzustellen oder in eigene Angebote wie etwa Metaportale zu integrieren. Prinzipiell steht es dabei aber jedem Benutzer offen, sich selbst Programme zu schreiben mit denen er APIs anzapft um Daten auszulesen oder zu schreiben, und die für ein Webportal erworbene Zugangsberechtigung gilt meistens auch für diesen alternativen Kommunikationsweg. Die Anbieter von Web Services auf der anderen Seite sind vor allem aber daran interessiert, welche Mittel gut dafür geeignet sind, um ein API aufzusetzen und zur Verfügung zu stellen.

Der Standard für Programmierschnittstellen, der seit einigen Jahren verstärkt eingesetzt wird und der sich neben Konkurrenten wie SOAP und XML-RPC mittlerweile durchgesetzt hat, ist REST (Representational State Transfer) [1]. Bei dem im Jahr 2000 entwickelten REST handelt es sich aber nicht um eine Spezifikation, sondern um eine Richtlinie beziehungsweise ein Designprinzip für die Kommunikation von Maschinen, das gut oder schlecht umgesetzt werden kann (im Englischen gibt es dafür den Ausdruck „RESTfulness“). ...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang