
WebSockets with Python
Bouw de verbinding waarmee een server als eerste kan spreken. Je voert de WebSocket-openingshandshake uit en codeert elk frame zelf, byte voor byte, en gebruikt daarna een echte bibliotheek om een live scorebord voor een quizavond te draaien dat elke scorewijziging tegelijk naar meerdere kijkers stuurt en netjes afsluit.
Je hebt eerst HTTP with Python nodig: HTTP met de hand geschreven en geparset, gebufferd lezen, struct, servers die met opzet stoppen, en fake verbindingen in tests. Python Fundamentals II wordt aangeraden, maar is niet verplicht.
Je werkt in de browsereditor van de site en in een sandbox zonder route naar het openbare internet. Elke live run start daarom een server en zijn clients binnen één Python-programma op het loopback-adres, en zo wordt WebSocket-code ook in echte projecten getest. Eén project groeit van een zelfgebouwde echoservice uit tot een geteste scorebordserver die een token controleert voordat hij iemand toelaat.
12
hoofdstukken
60
lessen
32
oefeningen
13
projecten
De lessen staan in een aanbevolen volgorde, maar je kunt elke les openen.
Hoofdstuk 1
Als de server nieuws heeft
Hoofdstuk 2
Vragen om van protocol te wisselen
Hoofdstuk 3
Frames, byte voor byte
Hoofdstuk 4
Maskers en controleframes
Hoofdstuk 5
Een gesprek op loopback
Hoofdstuk 6
De bibliotheek websockets, zonder asyncio
Hoofdstuk 7
Eén server, veel clients
Hoofdstuk 8
Trage clients en verloren verbindingen
Hoofdstuk 9
Wie mag er verbinding maken?
Hoofdstuk 10
Eindproject: een live scorebord
Hoofdstuk 11
Een voorproefje van async
Hoofdstuk 12