Flask auf der Serverseite

Flask ist ein so genanntes Microframework. Darunter lässt sich eine Art Baukasten verstehen, mit dem man schnell zum Ziel kommt - jedenfalls schneller, als wenn man alles von Grund auf neu programmieren würde. Aus Sicht der Didaktik wäre es natürlich besser, alles von Grund auf neu zu programmieren. Aber die Zeit ist oft begrenzt, um alle relevanten Webtechnologien anzusprechen und auszuprobieren. Außerdem repräsentiert Flask eine moderne Art der Webprogrammierung, die Sie kennen sollten.

Installation von Flask

Es gibt viele verschiedene Wege, Flask zu installieren. Auf einem aktuellen Raspberry (2021) ist Flask schon installiert und einsatzbereit. Weitere Möglichkeiten sind in der Dokumentation von Flask erklärt.

Minimal-Applikation mit Flask

Um Flask auszuprobieren, legen Sie eine erste Datei an, mit der Sie die Welt begrüßen - so gehört es sich. Sollten Ordner nicht vorhanden sein, legen Sie diese mit mkdir an.

$ cd www/
$ mkdir helloflask
$ cd helloflask/

In dem neu erstellten Ordner legen Sie mit dem Editor nano eine Datei an:

$ nano app.py

Nachdem sich der Editor geöffnet hat, schreiben wir den folgenden Python-Code hinein.

 1#!/usr/bin/env python3
 2
 3# Importieren der notwendigen Module
 4from flask import Flask
 5# Definieren einer Variable, die die aktuelle Datei zum Zentrum
 6# der Anwendung macht.
 7app = Flask(__name__)
 8
 9# Festlegen einer Route für die Homepage. Der String in den Klammern
10# bildet das URL-Muster ab, unter dem der folgende Code ausgeführt
11# werden soll.
12@app.route('/')
13def hello_world():
14    return 'Hello, World!'
15
16if __name__ =='__main__':
17    app.run(host="0.0.0.0", debug=True)

Mit STRG+X verlassen Sie den Editor. Die Frage, ob Sie speichern wollen, beantworten Sie mit Ja und stimmen auch dem Namen zu.

Flask-App starten

Flask besitzt einen eingebauten Webserver, der während der Entwicklung benutzt werden kann. Das bedeutet, dass Ihre paar Codezeilen mit wenigen Befehlen im Netz verfügbar gemacht werden können! Folgendes muss dafür auf der Kommandozeile eingegeben werden:

$ export FLASK_APP=app.py
$ export FLASK_RUN=development
$ flask run --host=0.0.0.0

Das Terminal sollte ausgeben, dass ein Webserver auf Port 8000 gestartet wurde.

Aufrufen der Webseite im Browser

Abschließend kann unsere App von einem Browser aus aufgerufen werden.

http://[IP-Adresse des RPI]:5000

Wie geht’s weiter?

Nachdem Sie nun eine Anwendung haben, die Anfragen (requests) annimmt und eine Antwort (response) zurückschickt, können Sie sich darum kümmern, Daten aus dem Request zu verarbeiten. Lesen Sie dazu weiter auf der Seite Request-Daten mit Flask auswerten.

Weiter