Sobes.tech
Intern

Mi az a HTTP?

sobes.tech MI

Válasz az MI-től

Hipermédia átviteli protokoll. Alkalmazási szintű hálózati protokoll az adatok cseréjéhez.

Fő jellemzők:

  • Kliens-szerver architektúra: A kliens (pl. böngésző) kérvényt küld a szervernek, a szerver feldolgozza a kérést és választ ad.
  • Állapot nélküli (stateless): Minden kérés függetlenül kerül feldolgozásra a korábbiaktól. A munkamenet állapota magasabb szinteken kerül fenntartásra (pl. cookie segítségével).
  • TCP-t használ: Az alapértelmezett szállítási protokoll a TCP, amely megbízható adatátvitelt biztosít.
  • Port 80: Az alapértelmezett port a HTTP-hez.
  • Kérések módszerei (HTTP methods/verbs): Meghatározzák a végrehajtandó művelet típusát a forráson.
    • GET: Adatok kérés a megadott forrásból.
    • POST: Adatok küldése feldolgozásra vagy új forrás létrehozására.
    • PUT: Létező forrás frissítése vagy új létrehozása a megadott URI-val.
    • DELETE: A forrás törlése.
    • PATCH: Részleges frissítés a forráson.
    • HEAD: Válaszcímek kérés, hasonló a GET-hez, de törzs nélkül.
    • OPTIONS: Információkérések a rendelkezésre álló módszerekről és egyéb kapcsolati opciókról a célforráshoz.
  • Állapotkódok (Status Codes): Háromjegyű számok, amelyek a kérés eredményét jelzik.
    • 1xx: Tájékoztató
    • 2xx: Sikeres - 200 OK
    • 3xx: Átirányítás
    • 4xx: Kliens hiba - 404 Not Found
    • 5xx: Szerver hiba - 500 Internal Server Error

HTTP-üzenet szerkezete:

Rész Kérés (Request) Válasz (Response)
Kezdő sor Módszer URI HTTP-verzió (pl. GET / HTTP/1.1) HTTP-verzió Kód állapot Fázis állapota (pl., HTTP/1.1 200 OK)
Fejlécek "Név-érték" párok (pl., Host: example.com) "Név-érték" párok (pl., Content-Type: text/html)
Üres sor Elválasztja a fejléceket a törzstől. Elválasztja a fejléceket a törzstől.
Törzs Nem kötelező. Tartalmazza a küldendő adatokat (pl. űrlapok). Nem kötelező. Tartalmazza a kért adatokat (pl. HTML oldal).

HTTP-kérés példája:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, mint Gecko) Chrome/58.0.3029.110 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

HTTP-válasz példája:

HTTP/1.1 200 OK
Date: Tue, 25 Jun 2024 10:00:00 GMT
Server: Apache/2.4.1 (Unix)
Content-Type: text/html; charset=UTF-8
Content-Length: 1234

<!DOCTYPE html>
<html>
<head>
    <title>Index Page</title>
</head>
<body>
    HelloWorld!
</body>
</html>

A World Wide Web-en hipermediális dokumentumok (HTML, képek, videók) átvitelére használják. Az HTTPS a HTTP biztonságos változata titkosítással (SSL/TLS).