Sobes.tech
Middle

Kuidas töötab HTTP protokoll?

sobes.tech AI

Vastus AI-lt

HTTP (Hypertext Transfer Protocol) — hüperteksti edastamise protokoll, mida kasutatakse ressursside, näiteks veebilehtede, saamiseks. Töötleb "klient-server" mudeli järgi.

Klient (tavaliselt brauser) saadab serverile päringu, mis töödeldakse ja saadetakse vastus.

HTTP sõnumi põhielemendid:

  1. Algusrida: Määrab sõnumi tüübi (päring või vastus) ja põhiparameetrid.

    • Päring: Meetod (GET, POST, PUT, DELETE ja teised), tee ressursile, protokolli versioon.
    • Vastus: Protokolli versioon, olekukood (200 OK, 404 Not Found, 500 Internal Server Error ja teised), oleku tekstiline kirjeldus.
    GET /index.html HTTP/1.1 // Päringu algusrida näide
    
    HTTP/1.1 200 OK // Vastuse algusrida näide
    
  2. Pealkirjad (Headers): Sisaldavad meta-informatsiooni sõnumi ja sõnumi keha kohta. Iga pealkiri on esitatud paarina "NimiPealkiri: Väärtus":

    • Päringu pealkirjad: Host, User-Agent, Accept, Content-Type, Content-Length ja teised.
    • Vastuse pealkirjad: Content-Type, Content-Length, Server, Set-Cookie ja teised.
    Host: example.com // Pealkirja Host näide
    User-Agent: Mozilla/5.0 // User-Agent näide
    
  3. Tühi rida: Eraldab pealkirjad sõnumi kehasid.

  4. Sõnumi keha (Body): Sisaldab edastatavaid andmeid. Võib puududa mõnes päringus (näiteks GET) ja vastuses (näiteks 204 No Content). POST või PUT päringutes sisaldab keha tavaliselt edastatavaid andmeid. Vastustes sisaldab keha nõutud ressurssi (näiteks HTML-kood, pildid, JSON).

    <!DOCTYPE html>
    <html>
    <head>
        <title>Example</title>
    </head>
    <body>
        <h1>Hello!</h1>
    </body>
    </html>
    

HTTP põhimeetodid:

Meetod Kirjeldus Rakendus
GET Nõuab ressurssi määratud URL-ist. Andmete saamine, ilma serveri seisundi muutmata.
POST Saadab andmeid töötlemiseks serverile. Vormide saatmine, failide üleslaadimine, ressursside loomine.
PUT Uuendab või loob ressurssi määratud URL-i järgi. Olemasolevate ressursside uuendamine.
DELETE Kustutab ressurssi määratud URL-i järgi. Ressursside kustutamine.
HEAD Nõuab ressurssi pealkirju ilma keha. Saada metainformatsiooni ressursi kohta.

HTTP on olekuta protokoll (stateless). Iga päring on sõltumatu. Olekute säilitamiseks kasutatakse mehhanisme nagu cookies ja sessioonid.