Sjećaš li se obrasca bez primatelja?
U razini 2 si napravio obrazac koji provjeri poruku, zahvali… i zatim je baci. Nije bilo gdje je spremiti. Tvoja web stranica do sada može samo razdavati gotove datoteke – ne može primiti i zapamtiti ništa. Za to treba server. I to je upravo ono što ćeš sada naučiti graditi.
Frontend i backend
Svaka velika aplikacija (Instagram, online škola, online trgovina) ima dvije polovice:
- Frontend – sve što radi u pregledniku posjetitelja. HTML, CSS, JavaScript, React. Sve to već znaš!
- Backend – program koji radi na serveru. Prima zahtjeve, sprema podatke, provodi pravila. A budući da Node.js postoji, može se pisati jezikom koji već znaš: JavaScriptom.
Kako dvije polovice razgovaraju? Preko API-ja (Application Programming Interface) – dogovorenih adresa na kojima backend odgovara. Evo uzorka razgovora:
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 }
- GET = “daj mi podatke” (preglednik to radi svaki put kad otvoriš stranicu).
- POST = “evo podataka, spremi ih” (to radi tvoj obrazac).
Podaci se šalju u JSON formatu – izgleda gotovo kao JavaScript objekti koje znaš iz kviza. Sretna slučajnost? Ne – JSON znači JavaScript Object Notation. Na tvojoj je strani.
Gdje takav backend radi?
Tijekom razvoja na tvom računalu (localhost – znaš iz Vitea). U produkciji na računalu koje je uvijek uključeno i spojeno – ili unajmljeni “kriška” servera (VPS) ili servis koji sve riješi za tebe (Render, Railway…). Do objave dolazimo u završnoj lekciji.
Za što je onda GitHub Pages? To je hosting samo za frontend – razdaje datoteke, ništa više. Savršeno za web stranicu iz razine 1–2 (i najsigurnije: gdje ništa ne radi, ništa se ne može hakirati). Backend trebaš u trenutku kad web stranica mora primati i pamtiti nešto – poruke, prijave, korisnike.
Sad si ti na redu 💪 (mini misija iz znatiželje)
- Otvori omiljenu web stranicu, pritisni F12 i prebaci se na karticu Network. Osvježi stranicu i gledaj vodopad zahtjeva – svaki redak je jedan razgovor između preglednika i servera.
- Pronađi
GETzahtjev na popisu i jedan koji vraća JSON (stupac Type:jsonilifetch). Klikni ga i pogledaj odgovor – vidjet ćeš podatke od kojih je stranica sastavljena. - Upiši ovo u konzolu i gledaj kako frontend sam traži podatke:
fetch("https://api.chucknorris.io/jokes/random")
.then((response) => response.json())
.then((data) => console.log(data.value));
fetch(...) je JavaScript naredba “pozovi API.” U lekciji 9 koristit ćeš ovu naredbu da povežeš obrazac sa svojim serverom.
Provjeri sam sebe: Možeš svojim riječima objasniti razliku između frontenda i backenda, znaš što su GET, POST i JSON, i vidio si u Network panelu kako web stranice razgovaraju. U sljedećoj lekciji takav server ćeš izgraditi sam.
Što ćeš ponijeti iz ove lekcije
- Frontend radi na uređaju posjetitelja, backend na serveru; razgovaraju preko API-ja s GET (daj) i POST (spremi) porukama.
- Podaci teku u JSON formatu – izgleda kao JavaScript objekti.
fetch()je način na koji frontend traži podatke od servera.
© 2026 Ing. Martin Polak / AlgoRhino · Uvjeti korištenja sadržaja