Sobes.tech
Intern

Ce este HTTP?

sobes.tech AI

Răspuns de la AI

Protocolul de transfer de hipertext. Protocol de rețea de nivel aplicație pentru schimbul de date.

Caracteristici principale:

  • Arhitectură client-server: Clientul (de exemplu, un browser) trimite o solicitare către server, care procesează solicitarea și returnează un răspuns.
  • Fără stare (stateless): Fiecare solicitare este procesată independent de cele anterioare. Starea sesiunii este menținută la niveluri superioare (de exemplu, folosind cookie-uri).
  • Utilizează TCP: Protocolul de transport implicit este TCP, care asigură o livrare fiabilă a datelor.
  • Portul 80: Portul standard pentru HTTP.
  • Metodele de solicitare (HTTP methods/verbs): Determină tipul de acțiune care trebuie efectuată asupra resursei.
    • GET: Solicitarea datelor de la resursa specificată.
    • POST: Trimiterea datelor pentru procesare sau creare a unei resurse noi.
    • PUT: Actualizarea unei resurse existente sau crearea uneia noi la URI-ul specificat.
    • DELETE: Ștergerea resursei specificate.
    • PATCH: Actualizare parțială a resursei.
    • HEAD: Solicitarea antetelor răspunsului, similar cu GET, dar fără corp.
    • OPTIONS: Solicitarea informațiilor despre metodele disponibile și alte opțiuni de comunicare pentru resursa țintă.
  • Codurile de stare ale răspunsului (Status Codes): Numere de trei cifre care indică rezultatul solicitării.
    • 1xx: Informațional
    • 2xx: Succes - 200 OK
    • 3xx: Redirecționare
    • 4xx: Eroare de client - 404 Not Found
    • 5xx: Eroare de server - 500 Internal Server Error

Structura mesajului HTTP:

Parte Solicitare (Request) Răspuns (Response)
Linia de start Metoda URI Versiunea HTTP (de exemplu, GET / HTTP/1.1) Versiunea HTTP Codul de stare Frasea de stare (de exemplu, HTTP/1.1 200 OK)
Anteturi Par "Nume-Valoare" (de exemplu, Host: example.com) Par "Nume-Valoare" (de exemplu, Content-Type: text/html)
Linie goală Separă anteturile de corp. Separă anteturile de corp.
Corp Opțional. Conține date pentru trimitere (de exemplu, formulare). Opțional. Conține datele solicitate (de exemplu, pagina HTML).

Exemplu de solicitare HTTP:

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, like 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

Exemplu de răspuns HTTP:

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>Pagina index</title>
</head>
<body>
    HelloWorld!
</body>
</html>

Este utilizat pentru transmiterea documentelor hipermedia (HTML, imagini, videoclipuri) pe World Wide Web. HTTPS este versiunea securizată a HTTP, utilizând criptarea (SSL/TLS).