Il 0% ha trovato utile questo documento (0 voti)
9 visualizzazioni

Modulo 2 - Parte 2

Caricato da

AMV World
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
9 visualizzazioni

Modulo 2 - Parte 2

Caricato da

AMV World
Copyright
© © All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Sei sulla pagina 1/ 7

Il protocollo HTTP

DEFINIZIONE

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti
Introduzione
Il protocollo HTTP (HyperText Transfer Protocol) è stato inizialmente progettato ed implementato
agli inizi degli anni Novanta per il trasferimento dai server ai browser delle pagine dei siti web
codificate in linguaggio HTML ed è oggi il protocollo applicativo maggiormente utilizzato nella
rete Internet.
Il successo del protocollo HTTP è dovuto alla generalità della sua progettazione che prevede la
richiesta al server da parte del client di operazioni di creazione, lettura, aggiornamento ed
eliminazione di risorse che possono essere file, pagine web, dati contenuti in database…

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti
Metodi fondamentali
Una richiesta in HTTP che il client invia al server comprende, oltre a eventuali dati, l’URL che
identifica la risorsa su cui operare e un comando, definito metodo, che specifica l’operazione
da effettuare.

METODO OPERAZIONE
GET Lettura della risorsa: una copia viene trasferita al client
POST Aggiornamento della risorsa con i dati inviati
PUT Creazione della risorsa a partire dai dati inviati
DELETE Eliminazione della risorsa dal server

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti
Codici di stato
Una risposta HTTP, che il server restituisce al client, comprende un codice stato numerico a 3 cifre che
esprime il successo (codici che iniziano con la cifra 2) o il motivo del fallimento (codici che iniziano
con le cifre 3, 4 e 5) della richiesta ed, eventualmente, i dati richiesti. I codici di stato che hanno
come prima cifra 1 sono di tipo informativo e sono usati per le negoziazioni tra client e server.

Codice di stato Esito richiesta


200 Successo
201 Successo, risorsa creata
204 Successo, non ci sono dati da restituire
301 Fallimento, risorsa con un URL diverso
400 Fallimento, richiesta errata
401 Fallimento, accesso alla risorsa richiesta non autorizzato
403 Fallimento, accesso alla risorsa proibito
404 Fallimento, risorsa richiesta inesistente
408 Fallimento, risposta non ricevuta in tempo utile
500 Fallimento, errore del server
503 Fallimento, server temporaneamente non disponibile

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti
Body
Sia la richiesta sia la risposta HTTP possono trasferire dati in una sezione denominata body ed
entrambe possono comprendere uno o più header: valori assegnati a variabili dal nome
predefinito che specificano caratteristiche della richiesta/risposta, o dei dati che trasferisce;
esempi di header sono il formato dei dati e la data/ora della risposta.
ESEMPIO: la richiesta a un server di una pagina web da parte di un browser produce un risposta
con codice di stato 200, con un header che ne specifica il formato come text/html e la cui sezione
body contiene il codice in linguaggio HTML della pagina.

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti
Messaggio di richiesta:

• Riga di richiesta (request line)


• Sezione header (informazioni aggiuntive)
• Riga vuota (CRLF: i due caratteri carriage return e line feed)
• Body (corpo del messaggio)

Messaggio di risposta:

• Riga di stato (status-line)


• Sezione header (informazioni aggiuntive)
• Riga vuota (CRLF: i due caratteri carriage return e line feed)
• Body (corpo del messaggio)
Risposta lato server
Lato server il protocollo HTTP è normalmente implementato da un’applicazione software
denominata web server o HTTP server, che riceve le richieste dei client sulla porta TCP 80, o 443
nel caso del protocollo HTTPS.
I client sono usualmente browser che richiedono le pagine web, memorizzate come file in
formato HTML o generate dinamicamente al momento della richiesta all’host che esegue il web
server identificato dal proprio indirizzo IP.
Le pagine web riferiscono spesso risorse come immagini, filmati, audio… contenute in file con
formati specifici che vengono trasferiti dal server al client mediante il protocollo HTTP.

Modulo 2 Il Livello Applicazione - parte 2

Sistemi e Reti

Potrebbero piacerti anche