Kako deluje HTTP?

Osnovni princip delovanja

HTTP (Hypertext Transfer Protocol) je protokol na aplikacijskem nivoju ISO/OSI modela in je osnoven protokol za prenos podatkov preko svetovnega spleta. Deluje na preprostem principu zahtev (angl. request) in odzivov (ang. response). Kot vidimo na spodnji sliki, je delovanje HTTP razmeroma enostavno.

Odjemalec (angl. client), ki je spletni brskalnik, preko omrežja pošlje strežniku (angl. server) zahtevo po določeni informaciji. Strežnik jo nato obdela ter se nanjo odzove. V odzivu priloži zahtevane informacije, če so mu te na voljo, v nasprotnem primeru pa je odziv negativen. V vsakem primeru pa se je dolžan odzvati. HTTP protokol uvrščamo med t.i. “stateless” protokole – to pomeni, da strežnik ne beleži posameznih zahtevkov, ampak se vsak zahtevek oz. sporočilo obravnava kot zgodba zase. Posledica tega je, da mora vsako sporočilo vsebovati vse podatke, ki jih naslovnik (strežnik) potrebuje za razumevanje (npr. podatki o pošiljatelju). Če en klient strežniku pošlje verigo sporočil, bo torej moralo vsako vsebovati podatke o pošiljatelju, saj si tega strežnik ne bo zapomnil.

Kateri tipi podatkov se prenašajo preko HTTP?
  • hipertekst (angl. hypertext) – HTML in CSS
  • hipermedij (angl. hypermedia) – zvok, grafika, video
  • hiperpovezave (angl. hyperlinks) – definirajo strukturo spleta
  • skripte – izvorna koda, ki se izvede na odjemalcu

 

HTTP request

Http request je sporočilo, ki ga klient pošlje strežniku. Z njim od strežnika zahteva določeno akcijo.

Levo zgoraj vidimo Besedo GET. Je zelo pomembna in določa tip requesta. V tem primeru gre za request, ki od strežnika zahteva določeno vsebino (npr. del spletne strani). Vrste requestov:

  • POST (shrani podatek na strežnik)
  • GET (dobi podatek od strežnika)
  • PUT (zamenjaj že obstoječ podatek na strežniku z drugim)
  • DELETE (zbriši podatek iz strežnika)
  • HEAD (delno spremeni že obstoječ podatek na strežniku)

Obstajajo še drugi tipi, ki pa niso tako pomembni. Poglejmo si primer za lažje razumevanje. Recimo, da imamo aplikacijo ki je telefonski imenik. Vsak vpis vsebuje naslednje podatke:

{

   ime: Janez

   Priimek: Kranjski

   telefonskaStevilka: 040222222

   starost: 24

}

 

 

 

Dodaj odgovor

Vaš e-naslov ne bo objavljen. * označuje zahtevana polja