Sobes.tech
Middle

Hogyan működik a HTTP protokoll?

sobes.tech MI

Válasz az MI-től

HTTP (Hypertext Transfer Protocol) — egy alkalmazásrétegi protokoll, amelyet erőforrások, például weboldalak elérésére használnak. A "kliens-szerver" modell szerint működik.

A kliens (általában böngésző) kérvényt küld a szervernek, amely feldolgozza a kérvényt és választ küld.

Az HTTP üzenet fő elemei:

  1. Kezdő sor: Meghatározza az üzenet típusát (kérés vagy válasz) és a fő paramétereket.

    • Kérés: Módszer (GET, POST, PUT, DELETE stb.), az erőforráshoz vezető út, a protokoll verziója.
    • Válasz: A protokoll verziója, státuszkód (200 OK, 404 Not Found, 500 Internal Server Error stb.), a státusz szöveges leírása.
    GET /index.html HTTP/1.1 // Példa kérés kezdő sorára
    
    HTTP/1.1 200 OK // Példa válasz kezdő sorára
    
  2. Fejlécek (Headers): Meta-információkat tartalmaznak az üzenetről és az üzenet testéről. Minden fejléc "FejlécNév: Érték" formában van.

    • Kérésfejlécek: Host, User-Agent, Accept, Content-Type, Content-Length stb.
    • Válaszfejlécek: Content-Type, Content-Length, Server, Set-Cookie stb.
    Host: example.com // Példa Host fejlécre
    User-Agent: Mozilla/5.0 // Példa User-Agent fejlécre
    
  3. Üres sor: Elválasztja a fejléceket az üzenet testétől.

  4. Üzenet test (Body): Tartalmazza az átvitt adatokat. Egyes kérésekben (pl. GET) és válaszokban (pl. 204 No Content) hiányozhat. POST vagy PUT kérésekben a test általában a küldött adatokat tartalmazza. Válaszokban a test a kért erőforrást tartalmazza (pl. HTML kód, képek, JSON).

    <!DOCTYPE html>
    <html>
    <head>
        <title>Példa</title>
    </head>
    <body>
        <h1>Szia!</h1>
    </body>
    </html>
    

Fő HTTP módszerek:

Módszer Leírás Használat
GET Kéri az erőforrást a megadott URL-ről. Adatok lekérése anélkül, hogy megváltoztatná a szerver állapotát.
POST Adatokat küld feldolgozásra a szervernek. Űrlapok küldése, fájlok feltöltése, erőforrások létrehozása.
PUT Frissíti vagy létrehozza az erőforrást a megadott URL-en. Létező erőforrások frissítése.
DELETE Törli az erőforrást a megadott URL-en. Erőforrások törlése.
HEAD Kéri az erőforrás fejlécét anélkül, hogy a testet kérné. Az erőforrás metaadatai.

HTTP egy állapot nélküli protokoll. Minden kérés független. Az állapot fenntartására mechanizmusokat, például cookie-kat és munkameneteket használnak.