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 OK3xx: Átirányítás4xx: Kliens hiba -404 Not Found5xx: 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).