10.14. Afronding¶
De cam in de tuin houdt nu in de gaten wat er voor hem staat, streamt het beeld naar de telefoon die is ingelogd, verzendt Server-Sent Events op het moment dat er iets beweegt, accepteert dashboardcommando’s via een WebSocket en uploadt een JPEG van elk getriggerd frame naar een cloudarchief – allemaal over HTTPS, achter een login, met CORS en CSRF die de deur dichthouden voor cross-site-onheil. Eén script, vier achtergrondcoroutines die de asyncio-loop delen met één HTTP-server, drie kleine bestanden in /sdcard/static/ voor het dashboard, één ondertekeningsgeheim op het bestandssysteem.
10.14.1. Referentieroutekaart¶
Wanneer je in je eigen applicatie naar een van deze functies grijpt, zijn de referentiepagina’s de plekken om op te zoeken:
microdot — minimaal HTTP-framework –
microdot.Microdot,Request,Response, de route-decorators,mount(),microdot.abort(),microdot.redirect(),start_server(),run().microdot.auth — HTTP-authenticatie –
BasicAuthenTokenAuthvoor header-gebaseerde authenticatie.microdot.session — ondertekende cookie-sessies – de sessieopslag met ondertekende cookies.
microdot.login — gebruikersinlogproces – de loginflow die bovenop session is gebouwd.
microdot.sse — Server-Sent Events – Server-Sent Events voor eenrichtingspush.
microdot.websocket — WebSocket-ondersteuning – WebSockets voor tweerichtings-frame-berichten.
microdot.cors — Cross-Origin Resource Sharing – de CORS-middleware.
microdot.csrf — CSRF-bescherming – de CSRF-middleware.
microdot.multipart — parsen van multipart/form-data – het parsen van formulieren en bestandsuploads (de achtertuincam accepteert geen uploads, maar de meeste dashboards uiteindelijk wel).
jwt — JSON Web Tokens – de JWT-primitief die zowel
TokenAuthals de sessieopslag ondersteunt.requests — HTTP-client – de uitgaande HTTP-client.
Elk is een opzoekpagina van één pagina. Gebruik ze nu je elk onderdeel in context hebt gezien.