Sobes.tech
Middle

Jak funguje protokol HTTP?

sobes.tech AI

Odpověď od AI

HTTP (Hypertext Transfer Protocol) — protokol aplikační vrstvy přenosu dat, používaný k získávání zdrojů, jako jsou webové stránky. Funguje na modelu "klient-server".

Klient (obvykle prohlížeč) odešle požadavek serveru, a server požadavek zpracuje a odešle odpověď klientovi.

Hlavní prvky HTTP zprávy:

  1. Start řetězec: Určuje typ zprávy (požadavek nebo odpověď) a hlavní parametry.

    • Požadavek: Metoda (GET, POST, PUT, DELETE a další), cesta k zdroji, verze protokolu.
    • Odpověď: Verze protokolu, kód stavu (200 OK, 404 Not Found, 500 Internal Server Error a další), textový popis stavu.
    GET /index.html HTTP/1.1 // Příklad start řetězce požadavku
    
    HTTP/1.1 200 OK // Příklad start řetězce odpovědi
    
  2. Hlavičky (Headers): Obsahují metainformace o zprávě a těle zprávy. Každá hlavička je představována párem "NázevHlavičky: Hodnota".

    • Hlavičky požadavku: Host, User-Agent, Accept, Content-Type, Content-Length a další.
    • Hlavičky odpovědi: Content-Type, Content-Length, Server, Set-Cookie a další.
    Host: example.com // Příklad hlavičky Host
    User-Agent: Mozilla/5.0 // Příklad hlavičky User-Agent
    
  3. Prázdný řádek: Odděluje hlavičky od těla zprávy.

  4. Tělo zprávy (Body): Obsahuje přenášená data. Může chybět u některých požadavků (například GET) a odpovědí (například 204 No Content). U požadavků s metodami POST nebo PUT tělo obvykle obsahuje odesílaná data. U odpovědí tělo obsahuje požadovaný zdroj (například HTML kód, obrázky, JSON).

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

Hlavní metody HTTP:

Metoda Popis Použití
GET Požaduje zdroj z uvedeného URL. Získání dat, aniž by se měnilo stav serveru.
POST Odesílá data ke zpracování na server. Odesílání formulářů, nahrávání souborů, vytváření zdrojů.
PUT Aktualizuje nebo vytváří zdroj podle uvedeného URL. Aktualizace existujících zdrojů.
DELETE Odstraňuje zdroj podle uvedeného URL. Odstraňování zdrojů.
HEAD Požaduje hlavičky zdroje bez jeho těla. Získání metainformací o zdroji.

HTTP je protokol bez udržování stavu (stateless). Každý požadavek je nezávislý. Pro udržení stavu se používají mechanismy, jako jsou cookies a relace.