Intern
Čo je HTTP?
sobes.tech AI
Odpoveď od AI
Protokol prenosu hiperteksta. Mrežni protokol na nivou aplikacije za razmenu podataka.
Osobine:
- Klijent-server arhitektura: Klijent (npr. prehliadač) šalje zahtev serveru, server obrađuje zahtev i vraća odgovor.
- Bez čuvanja stanja (stateless): Svaki zahtev se obrađuje nezavisno od prethodnih. Stanje sesije se održava na višim nivoima (npr. pomoću kolačića).
- Koristi TCP: Podrazumevani transportni protokol je TCP, koji obezbeđuje pouzdanu isporuku podataka.
- Port 80: Standardni port za HTTP.
- Metode zahteva (HTTP methods/verbs): Određuju vrstu akcije koja treba da se izvrši nad resursom.
GET: Zahtev za podatke sa navedenog resursa.POST: Slanje podataka na obradu ili kreiranje novog resursa.PUT: Ažuriranje postojećeg resursa ili kreiranje novog po navedenom URI.DELETE: Brisanje navedenog resursa.PATCH: Delimično ažuriranje resursa.HEAD: Zahtev za zaglavljima odgovora, slično kao GET, ali bez tela.OPTIONS: Zahtev za informacijama o dostupnim metodama i drugim opcijama veze za ciljni resurs.
- Kôdovi stanja odgovora (Status Codes): Trocifreni brojevi koji ukazuju na rezultat zahteva.
1xx: Informativni2xx: Uspešni -200 OK3xx: Preusmeravanja4xx: Greška klijenta -404 Not Found5xx: Greška servera -500 Internal Server Error
Struktura HTTP poruke:
| Deo | Zahtev (Request) | Odgovor (Response) |
|---|---|---|
| Početna linija | Metod URI Verzija HTTP (npr., GET / HTTP/1.1) |
Verzija HTTP Kod stanja Faza stanja (npr., HTTP/1.1 200 OK) |
| Zaglavlja | Par "Ime-Vrednost" (npr., Host: example.com) |
Par "Ime-Vrednost" (npr., Content-Type: text/html) |
| Prazan red | Odvaja zaglavlja od tela. | Odvaja zaglavlja od tela. |
| Telo | Nije obavezno. Sadrži podatke za slanje (npr., obrasci). | Nije obavezno. Sadrži tražene podatke (npr., HTML stranica). |
Primer HTTP zahteva:
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, kao 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
Primer HTTP odgovora:
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>
Koristi se za prenos hipermedijalnih dokumenata (HTML, slike, video zapisi) na Svetskoj mreži. HTTPS je zaštićena verzija HTTP-a sa enkripcijom (SSL/TLS).