38. Lektion: WebserverAus Attraktor WikiVersion vom 6. Dezember 2023, 21:00 Uhr von Kapest (Diskussion | Beiträge) InhaltsverzeichnisWebserverWlan einrichtenimport network # Wlan Verbindung herstellen wlan = network.WLAN(network.STA_IF) wlan.active(True) if not wlan.isconnected(): print('connecting to network...') wlan.connect('ssid', 'key') while not wlan.isconnected(): pass print('network config:', wlan.ifconfig()) Das Webserver Packet phewFür den Raspberry Pi Pico W gibt es ein Packet, das alles enthält, was zur Einrichtung eines Webservers auf dem Pico erforderlich ist. Es heißt "phew" und ist von Github unter https://github.com/pimoroni/phew zu beziehen. Das Archiv muss entpackt und dann das Unterverzeichnis "phew" ins Filesystem des Pico kopiert werden.
from phew import server # hier werden die auszuliefernden Webseiten definiert. Siehe nächste Codebox. server.run() Die Webseiten werden wie Funktionen definiert. Mit einem Decorator wird die Route der Webseite bestimmt. from phew.template import render_template from os import stat HTDOCS = 'htdocs/' # Hier ist der "/" wichtig, sonst funktioniert es nicht! from phew import server @server.route("/random", methods=["GET"]) def random_number(request): import random min = int(request.query.get("min", 0)) max = int(request.query.get("max", 100)) return str(random.randint(min, max)) @server.route("/info", methods=["GET"]) def info_site(request): return "<h1>Infoseite vom Raspberry Pi Pico W</h1>" @server.route("/test", methods=["GET"]) def test_site(request): return render_template(HTDOCS + "html-test_001.html") # return render_template("html-test_001.html") # return ''' # <h1>Überschrift</h1> # Dieses ist eine kleine HTML-Testseite. # <br> # Noch ist es nur ein einfacher Test! # ''' # return render_template("html-test_001.html") @server.catchall() def catch_all(request): return "<h1>Hallo, diese Webseite gibt es nicht!</h1>", 404 # return render_template(HTDOCS + index.html)
Lager
|