Documente Academic
Documente Profesional
Documente Cultură
HTTP
HTTP
Hypertext Transfer Protocol (HTTP) este metoda Transferul datelor n combinaie cu o cerere pentru
cea mai des utilizat pentru accesarea informaiilor n o resurs (HTTP-metoda GET)
Internet care sunt pstrate pe servere World Wide Web
Transferul datelor n combinaie cu o cerere special
(WWW). Protocolul HTTP este un protocol de tip text,
(HTTP-metoda POST)
ind protocolul implicit al WWW. Adic, dac un URL
nu conine partea de protocol, aceasta se consider ca -
Datele transferate vin deseori %-codate. La metoda GET
ind http. HTTP presupune c pe calculatorul destinaie
se utilizeaz partea de cerere Uniform Resource Identi-
ruleaz un program care nelege protocolul. Fiierul tri-
ers (URI) cu simbolul ?. Aceast metod se utilizeaz
mis la destinaie poate un document HTML (abrevia-
pentru a transfera o list de parametri, pe care partea opu-
ie de la HyperText Markup Language), un ier grac,
s trebuie s o ia n considerare la prelucrarea cererii.
de sunet, animaie sau video, de asemenea un program
executabil pe server-ul respectiv sau i un editor de text. Deseori aceast list cuprinde perechi de valori separate
Dup clasicarea dup modelul de referin OSI, proto- prin semnul &, care sunt alctuite din numele parame-
colul HTTP este un protocol de nivel aplicaie. Realizarea trului, semnul = i valoarea parametrului. Rareori se mai
i evoluia sa este coordonat de ctre World Wide Web utilizeaz i semnul ; pentru separarea nregistrrilor lis-
Consortium (W3C). tei [1].
Exemplu: la pagina de start de la Wikipedia.ro utiliza-
torul introduce n cmpul de cutare termenul pisici,
alege categoria articole i apas butonul de cutare.
1 Modul de funcionare Atunci browserul trimite urmtoarea cerere la server:
GET /wiki/special:Search?search=pisici&go=articol
HTTP ofer o tehnic de comunicare prin care pagini-
HTTP/1.1 Host: ro.wikipedia.org ...
le web se pot transmite de la un computer aat la dis-
tan spre propriul computer. Dac se apeleaz un link Serverului Wikipedia i sunt transmise dou perechi de
sau o adres de web cum ar http://www.example.com, valori: Argument Valoare search pisici go articol
atunci se cere calculatorului host s aeze o pagin web Perechile de valori se transmit sub forma
(index.html sau altele). n prima faz numele (adre-
sa) www.example.com este convertit de protocolul DNS Argument1=valoare1&Argument2=valoare2
ntr-o adres IP. Urmeaz transferul prin protocolul TCP iar cu ? se ataeaz pagina. Astfel serverul a c uti-
pe portul standard 80 al serverului HTTP, ca rspuns la lizatorul dorete s vad articole despre pisici. Serverul
cererea HTTP-GET. Informaii suplimentare ca de ex. prelucreaz cererea, dar nu trimite un ier ci redirectea-
indicaii pentru browser, limba dorit .a. se pot aduga z browserul cu un Location-Header spre pagina dorit:
n header-ul (antetul) pachetului HTTP. n urma cererii
HTTP-GET urmeaz din partea serverului rspunsul cu HTTP/1.0 302 Moved Temporarily Date: Fri, 13 Jan
datele cerute, ca de ex.: pagini n (X)HTML, cu ie- 2008 15:12:44 GMT Location: http://ro.wikipedia.org/
re ataate ca imagini, iere de stil (CSS), scripturi (Ja- wiki/pisici ... Browserul execut indicaia i, pe baza no-
vascript), dar pot i pagini generate dinamic (SSI, JSP, ilor informaii, emite o nou cerere: GET /wiki/pisici
PHP i ASP.NET). Dac dintr-un anumit motiv informa- HTTP/1.1 Host: ro.wikipedia.org ... Serverul rspunde
iile nu pot transmise, atunci serverul trimite napoi un i ofer pagina cu articole despre pisici:
mesaj de eroare. Modul exact de desfurare a acestei ac- HTTP/1.0 200 OK Date: Fri, 13 Jan 2008 15:12:48
iuni (cerere i rspuns) este stabilit n specicaiile HT- GMT Last-Modied: Tue, 10 Jan 2008 11:18:20 GMT
TP. Content-Language: ro Content-Encoding: gzip Content-
Type: text/html; charset=utf-8
.........ZKs..>.-[K!luV*
3.r`+.Fx! ..7t."9.A.
2 Transferul argumentelor
Partea de date este mai lung i de necitit din cauza com-
Deseori utilizatorul dorete s transmit informaii spe- presiei gzip.
ciale la website. Aici HTTP pune la dispozitie dou po- n cazul unei cereri POST variabilele nu se a n URI,
sibiliti: ci n partea body:
1
2 3 ERORI DE HTTP
1. HTTP/0.9 - prima versiune realizat de Tim 2. HEAD: se comport exact ca metoda GET, dar ser-
Berners-Lee i echipa sa. Aceast versiune este verul returneaz doar antetul resursei, ceea ce per-
foarte simpl, dar cu numeroase neajunsuri, ind re- mite clientului s inspecteze antetul resursei, fr a
pede nlocuit de alte versiuni; nevoit s obin i corpul resursei.
2. HTTP/1.0 versiune introdus n 1996 prin 3. PUT: metoda este folosit pentru a depune docu-
RFC1945, a adus numeroase mbuntiri; mente pe server, ind inversul metodei GET.
5
6 Exemplu
Cererea clientului:
GET / HTTP/1.1 Host: www.example.com
Rspunsul serverului:
HTTP/1.1 200 OK Date: Mon, 23 May 2005 22:38:34
GMT Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)
Last-Modied: Wed, 08 Jan 2003 23:11:55 GMT Etag:
3f80f-1b6-3e1cb03b Accept-Ranges: bytes Content-
Length: 438 Connection: close Content-Type: text/html
7 Legturi externe
HTTP 0.9 As Implemented in 1991
8.2 Images
Fiier:Commons-logo.svg Surs: https://upload.wikimedia.org/wikipedia/commons/4/4a/Commons-logo.svg Licen: Public domain
Contribuitori: This version created by Pumbaa, using a proper partial circle and SVG geometry features. (Former versions used to be
slightly warped.) Artist original: SVG version was created by User:Grunt and cleaned up by 3247, based on the earlier PNG version,
created by Reidab.
Fiier:Wikidata-logo.svg Surs: https://upload.wikimedia.org/wikipedia/commons/f/ff/Wikidata-logo.svg Licen: Public domain Con-
tribuitori: Oper proprie Artist original: User:Planemad