Python

REST-API in Python erstellen

REST-API in Python erstellen
REST oder Representational State Transfer ist ein Softwareentwicklungsstil, der hauptsächlich im API- oder Application Programming Interface-Design verwendet wird, um interaktive und moderne Webdienste zu erstellen. Es wird auch als RESTful-Webservice bezeichnet.

Python ist eine mächtige Programmiersprache. Es verfügt über viele Bibliotheken zum Erstellen von REST- oder RESTful-APIs. Eine der beliebtesten Bibliotheken zum Erstellen von Web-Apps und Schreiben von REST-APIs ist Flasche.

In diesem Artikel zeige ich Ihnen, wie Sie mit Flask eine REST-API in Python erstellen. Lass uns anfangen.

Bedarf:

Du solltest haben

Sie sollten in der Lage sein, Artikel und Tutorials zu all diesen Themen auf LinuxHint . zu finden.com

Ich werde Python 3 unter Debian 9 Stretch in diesem Artikel verwenden. Wenn Sie Python 2 verwenden, müssen Sie ein wenig anpassen. Sie sollten in der Lage sein, es selbst herauszufinden, da es so einfach ist wie das Schreiben Python Anstatt von python3 und Pip Anstatt von pip3.

Einrichten der virtuellen Umgebung:

Einfach ausgedrückt, wird eine virtuelle Umgebung verwendet, um eine Python-App von einer anderen zu isolieren. Das dafür verwendete Python-Paket ist virtuelle Umgebung.

Sie können einfach installieren virtuelle Umgebung Verwenden Sie PIP auf Ihrem Computer mit dem folgenden Befehl:

$ sudo -H pip3 install virtualenv

Erstellen Sie nun ein Projektverzeichnis (nennen wir es feuer/) mit folgendem Befehl:

$ mkdir pyrest

Erstellen Sie nun eine virtuelle Python-Umgebung auf dem feuer/ Projektverzeichnis mit folgendem Befehl:

$ virtualenv pyrest/

Navigieren Sie nun mit folgendem Befehl in das Projektverzeichnis:

$ cd pyrest

Aktivieren Sie dann die virtuelle Python-Umgebung mit dem folgenden Befehl:

$ Quell-Bin/Aktivieren

Führen Sie abschließend den folgenden Befehl aus, um die Flask Python-Bibliothek zu installieren:

$ bin/pip3 install Flask

Schreiben Sie Ihr erstes Flask-Skript:

In diesem Abschnitt schreibe ich ein Hello-World-Programm in Python Flask.

Erstellen Sie zuerst eine Datei Hallo.py in Ihrem Projektverzeichnis:

$ berühren hallo.py

Fügen Sie nun die folgenden Zeilen zu . hinzu Hallo.py Datei und speichern Sie es.

Im nächsten Abschnitt zeige ich Ihnen, wie Sie Flask-Skripte ausführen.

Ausführen des Flask-Skripts:

Jetzt starte die Hallo.py Flask-Server, führen Sie den folgenden Befehl aus:

$bin/python3 hallo.py

Wie Sie sehen, ist der Server gestartet am http://127.0.0.1:8080.

Jetzt können Sie auf den Flask-Server zugreifen http://127.0.0.1:8080 über den Webbrowser oder API-Testsoftware wie Postman. Ich werde CURL verwenden.

$ curl http://127.0.0.1:8080

Wie Sie sehen, wird die korrekte Ausgabe auf dem Bildschirm gedruckt.

Glückwunsch! Flasche funktioniert.

Zugreifen auf Daten mit GET in der REST-API:

Die GET-Anforderung an die REST-API wird verwendet, um Informationen vom API-Server abzurufen. Sie legen einige API-Endpunkte fest und führen eine GET-Anfrage für diesen Endpunkt aus. Es ist einfach.

Erstellen Sie zuerst eine neue Datei erhalten.py in Ihrem Projektverzeichnis mit folgendem Befehl:

$ berühren Sie.py

Fügen Sie nun die folgenden Zeilen in Ihr erhalten.py Datei und speichern Sie es.

Hier, in Zeile 1, die Flasche Konstruktorfunktion und jsonify Funktion wird aus dem Kolbenmodul importiert.

Auf Zeile 3, a Flasche Objekt wird erstellt und gespeichert auf App Variable.

In Zeile 5 habe ich ein Python-Array von Wörterbüchern mit einigen Dummy-Daten erstellt und es im Konten Variable.

In Zeile 10 habe ich den API-Endpunkt definiert /Konten und die Anfragemethode, die ist ERHALTEN.

In Zeile 11 habe ich die Funktion definiert getAccounts(). getAccounts() Funktion wird ausgeführt, wenn eine GET-Anfrage an /Konten Endpunkt ist gemacht.

Linie 12, die ein Teil von . ist getAccounts() Funktion, ich habe die konvertiert Konten Array von Wörterbüchern zu JSON mit jsonify() Funktion und hat es zurückgegeben.

Auf der Linie 14-15 rief ich die . an App.Lauf() um Flask anzuweisen, den API-Server auf Port auszuführen 8080.

Führen Sie nun den Flask API-Server mit dem folgenden Befehl aus:

$ bin/python3 get.py

Der Server ist auf Port 8080 . gestartet.

Stellen Sie nun eine GET-Anfrage an die /Konten Endpunkt mit CURL wie folgt:

$ curl http://127.0.0.1:8080/Konten

Wie Sie sehen, werden die Kontodaten bei GET-Anfrage auf im JSON-Format angezeigt /Konten Endpunkt.

Sie können auch spezifische Kontodaten erhalten. Dazu erstelle ich einen weiteren API-Endpunkt /Konto/. Hier, wird die ID des Kontoinhabers sein. Die ID hier ist der Index des Arrays.

Bearbeiten Sie die erhalten.py Skript und füge die markierten Zeilen hinzu.

Hier, in Zeile 14, habe ich den API-Endpunkt definiert /Konto/ und die zu verwendende Methode, die ist ERHALTEN.

In Zeile 15-17 ist die Funktion getAccount() für den API-Endpunkt /Konto/ ist definiert. Das getAccount() Funktion akzeptiert a Ich würde als Argument. Der Wert von vom API-Endpunkt auf den Ich würde variabel von getAccount() Funktion.

In Zeile 16, die Ich würde Variable wird in eine ganze Zahl umgewandelt. Ich habe auch 1 von der abgeleitet Ich würde Variable. Da der Array-Index bei 0 beginnt. Ich möchte die Konto-ID ab 1 . beginnen. Also wenn ich 1 als Konto angebe , 1 - 1 = 0, ich hole das Element am Index 0 aus dem Array Konten.

In Zeile 17 das Array bei index wird als JSON zurückgegeben.

Der Rest der Codes ist gleich.

Führen Sie nun den API-Server erneut aus.

$ bin/python3 get.py

Ich habe Daten für Konto 1 und 2 separat angefordert und die erwartete Ausgabe erhalten, wie Sie auf dem Screenshot unten sehen können.

$ curl http://127.0.0.1:8080/Konto/1
$ curl http://127.0.0.1:8080/Konto/2

Hinzufügen von Daten mithilfe von POST in der REST-API:

Jetzt werde ich umbenennen erhalten.py zu api.py und fügen Sie einen API-Endpunkt hinzu /Konto zum Hinzufügen neuer Daten.

Umbenennen erhalten.py zu api.py:

$ mv -v get.py api.py

Fügen Sie zunächst die Zeilen (19-26) wie im Screenshot unten markiert zum api.py Datei.

Führen Sie nun die api.py Server:

$bin/python3-API.py

Zum Einfügen neuer Daten in die /Konto Endpunkt, führen Sie den folgenden Befehl aus:

$ curl -X POST -H "Content-Type: application/json" -d '"name": "Shovon", "balance": 100'
http://127.0.0.1:8080/Konto

HINWEIS: Hier, '"Name": "Shovon", "Guthaben": 100' sind die JSON-Eingabedaten.

Die Daten sollten eingefügt werden.

Wie Sie sehen, werden die neuen Daten hinzugefügt.

Das war's für diesen Artikel.  Danke, dass du diesen Artikel gelesen hast.

So verwenden Sie Xdotool zum Stimulieren von Mausklicks und Tastenanschlägen in Linux
Xdotool ist ein kostenloses Open-Source-Befehlszeilentool zum Simulieren von Mausklicks und Tastenanschlägen. Dieser Artikel enthält eine kurze Anleit...
Top 5 ergonomische Computermaus-Produkte für Linux
Verursacht längere Computernutzung Schmerzen im Handgelenk oder in den Fingern?? Leiden Sie unter steifen Gelenken und müssen ständig die Hände schütt...
So ändern Sie die Maus- und Touchpad-Einstellungen mit Xinput in Linux
Die meisten Linux-Distributionen werden standardmäßig mit der Bibliothek „libinput“ ausgeliefert, um Eingabeereignisse auf einem System zu verarbeiten...