10. Webové servery¶
Síťové kapitoly dostaly kameru na síť a daly jí sockety, přes které může komunikovat (Sítě). Co teď? Většina kamerových aplikací se scvrkává na dvě věci – zpřístupnit světu to, co kamera vidí a reagovat na to, co říkají ostatní věci v síti. HTTP je způsob, jak tato konverzace probíhá, a funguje v obou směrech:
Jako server kamera odpovídá na požadavky z telefonů, prohlížečů a dalších zařízení v síti. Framework
microdotje serverem kamery.Jako klient kamera oslovuje cloudové služby, aby nahrávala, stahovala nebo koordinovala. Modul
requestsje klientem kamery.
Během následujících 14 kapitol postavíme jednu běžící kamerovou aplikaci, která procvičí obojí.
Kamera spouštěná pohybem na dvorku sedí na sloupu na dvorku, vidí, co se děje, a informuje majitele o všem zajímavém. Kameru rozvineme z jednocestného serveru typu „jsem naživu“ do něčeho dodatelného: živý náhled na telefon majitele, dashboard s posuvníkem prahu a logem událostí, push notifikace při spuštění pohybu, přihlášení, HTTPS a cloudový archiv každého spuštěného snímku.
Každá kapitola přidává jednu funkci. Ukázky kódu předpokládají, že dřívější kapitoly jsou na místě – nevkládáme znovu celý skript pokaždé.
- 10.1. Váš první endpoint
- 10.2. Vrácení snímku
- 10.3. Živé streamování – jeden divák
- 10.4. Sdílení jedné smyčky zachytávání mezi diváky
- 10.5. Řídicí API pro kameru
- 10.6. Stavba dashboardu
- 10.7. Odesílání událostí na dashboard
- 10.8. Obousměrné řízení pomocí WebSockets
- 10.9. Ověřování pro programové klienty
- 10.10. Přihlášení k dashboardu
- 10.11. HTTPS – šifrování přenosu pro server
- 10.12. CORS a CSRF
- 10.13. Nahrávání spuštěných snímků do cloudu
- 10.14. Shrnutí