Wat er gebeurt bij één klik
Endpoints, templates en een database werken nu samen. Dit zijn dezelfde stappen als bij je eerste verzoek, met een database en een template ertussen: van de klik op een link tot de lijst op het scherm.
Browser: Je klikt op een link. De link wijst naar /berichten — een endpoint, geen bestand. · Links tussen pagina’s
Browser: De browser stuurt een GET. Een verzoek over het netwerk: geef me wat er op /berichten staat. · GET vs POST
Server: FastAPI zoekt het endpoint. Welke functie hoort bij dit pad? Die met @app.get("/berichten"). · Je eerste endpoint
Server: Jouw Python draait. De functie leest de berichten uit de database. · Gegevens opslaan
Server: Jinja2 vult de template. De for-lus maakt van elk bericht een regel HTML. · Een lijst tonen
Server: Het antwoord gaat terug. Kant-en-klare HTML. De database en je Python-code gaan niet mee.
Browser: De browser tekent de pagina. CSS wordt opgehaald, JavaScript begint. Hier stopt de server. · JavaScript erbij
Tussen stap 6 en 7 gebeurt het belangrijkste van de hele cursus: er gaat alleen HTML over de lijn. Je database blijft op de server, je Python-code ook. De browser krijgt het resultaat, niet de weg ernaartoe. Wie de broncode van je pagina bekijkt ziet de berichten, maar niet hoe je ze hebt opgehaald.
Stap 7 komt pas in JavaScript erbij aan bod. Tot die tijd tekent de browser de pagina en is hij klaar; wat er daarna nog in de browser kan gebeuren, is het onderwerp van het blok In de browser.
Kom je bij een nieuwe functie vast te zitten, zoek dan eerst de stap op waar hij thuishoort. Die tabel staat bij Hoe een verzoek werkt.