← Nivå 3 – Mester

Leksjon 7 av 10 ⏱ 20 minutter Premium

Hva en server er, og hva Node.js er til

Hvor en nettside faktisk bor, hva en API er, og hvorfor nivå 2-formularen ingen steder at sende sine meldinger havde.

Husker du den formular uden modtager?

I nivå 2 byggede du en formular, der sjekkede en melding, sa tak… og smed meldingen væk. Der var ingen steder at lagre den. Din nettside kan foreløpig kun uddele ferdige filer – den kan ikke modta og huske noe. For det trenger du en server. Og det er nøyaktig det, du er i ferd med å lære at bygge.

Frontend og backend

Hver stor applikation (Instagram, en online skole, en netthandel) har to halvdele:

Hvordan taler de to halvdele med hinanden? Gjennom en API (Application Programming Interface) – aftalte adresser, hvor backenden svarer. Her er en prøvesamtale:

Frontend:  GET /api/messages         ("Send me all the messages.")
Backend:   [{ "name": "Grandma", "text": "Lovely website!" }]

Frontend:  POST /api/messages        ("Here's data, save it: ...")
Backend:   { "saved": true }

Data sendes i JSON-formatet – det ligner nesten de JavaScript-objekter, du kjenner fra quizzen. En heldeg tilfældighed? Nej – JSON står for JavaScript Object Notation. Det er på siden din.

Hvor kjører en backend som den?

Under udvikling på din egen datamaskin (localhost – du kjenner det fra Vite). I produktion på en datamaskin, der altid er tændt og forbundet – enten en lejet “skive” af en server (en VPS), eller en tjeneste, der håndterer alt for deg (Render, Railway…). Vi kommer til deployment i den siste leksjon.

💡

Så hva var GitHub Pages til? Det er hosting kun til frontend – den udleverer filer, intet mere. Perfekt til en nivå 1–2-nettside (og også den sikreste: hvor intet kjører, kan intet hackes). Du har bruk for en backend i det øyeblikk, din nettside skal modta og huske noe – meldinger, tilmeldinger, brukere.

Nå er det din tur 💪 (en mini-mission af nysgerrighed)

  1. Åpne din yndlingsnettside, tryk F12, og skift til fanen Network. Genindles siden og se vandfaldet af forespørgsler – hver linje er én samtale mellom nettleseren og en server.
  2. Finn en GET-forespørgsel på listen, og én der returnerer JSON (Type-kolonne: json eller fetch). Klikk på den og se på svaret – du ser dataene, siden er bygget af.
  3. Skriv dette i konsollen og se frontend bede om data på egen hånd:
fetch("https://api.chucknorris.io/jokes/random")
  .then((response) => response.json())
  .then((data) => console.log(data.value));

fetch(...) er JavaScript-kommandoen “kall en API.” I leksjon 9 bruker du nøyaktig denne kommando til at forbinde en formular til din egen server.

Sjekk deg selv: Du kan forklare med dine egne ord forskellen mellom frontend og backend, du ved, hva GET, POST og JSON er, og du har set i Network-panelet, hvordan nettsider taler med hinanden. I neste leksjon bygger du en server som den selv.

Dette tar du med deg fra leksjonen