hypertext transfer protocol - Http
HTTP - Hypertext Transfer Protocol
Protocolul standard pentru transmiterea de date de pe World Wide Web - este HTTP (Hypertext Transfer Protocol - Hypertext Transfer Protocol). El descrie mesajele schimbate între clienți și servere. Fiecare interacțiune constă dintr-un ASCII-interogare, care ar trebui să fie un răspuns RFC răspuns 822 asemanator standardul MIME. Toți clienții și toate serverele trebuie să urmeze acest protocol. Acesta este definit în RFC 2616.
Modul obișnuit de a interacționa cu browser-ul de server este de a instala o conexiune TCP la portul de server 80, deși punct de vedere tehnic, această procedură nu este obligatorie. Valoarea de utilizare TCP - este că nici browsere, nici servere nu trebuie să vă faceți griji cu privire la pierdut, duplicat, mesaje prea lungi și acknowledgements. Toate acestea sunt furnizate de TCP.
HTTP 1.0 după ce conexiunea a fost trimisă o cerere la care a venit un răspuns. După această rupere TCP-conexiune. In timp ce o pagină web tipică a constat în întregime din HTML-text și acest mod de interacțiune a fost adecvată. Cu toate acestea, a fost nevoie de mai mulți ani, și sa dovedit o mulțime de icoane, imagini și alte ornamente din pagina. Este evident că instalarea TCP-conexiune pentru transmiterea unui icon este ineficient și prea scump.
Această analiză a condus la crearea protocolului HTTP 1.1, care este de a menține o conexiune stabilă. Acest lucru a însemnat că a existat o posibilitate de a instala TCP-conexiuni, trimiterea unei cereri, a primit un răspuns, și apoi transmiterea și primirea de cereri și răspunsuri suplimentare. Astfel, a scăzut costurile generale suportate într-o instalație rezidențială și deconectare. A fost posibil ca cererile de pipeline, adică, trimiteți cererea 2 înainte de sosirea răspunsului la cererea 1.
În ciuda faptului că HTTP a fost proiectat special pentru utilizarea în web - tehnologii, a fost făcut în mod deliberat mai versatil decât era necesar, calculată pentru utilizarea viitoare a aplicațiilor orientate-obiect. Din acest motiv, în plus față de pagini web obișnuite nevoi au fost dezvoltate operațiuni speciale, numite metode. Ei își datorează existența tehnologiei SOAP. Fiecare cerere include unul sau mai multe șiruri ASCII, în care primul cuvânt este numele numita metodă. Metodele încorporate sunt enumerate în tabelul de Fig.6. În plus față de aceste metode generale, obiecte diferite pot avea, de asemenea, propriile sale metode specifice. nume de metode sunt cazuri sensibile, adică, există o metoda GET, un get - nr.
Figura 6 - integrat metoda HTTP cerere
Metoda GET solicită ca pagina de server (prin care se înțelege, în general, un obiect, dar în practică este de obicei doar un fișier), codificate în conformitate cu standardul MIME. Cele mai multe anchete este de a face cereri de a ajunge la server.
Metoda HEAD doar cere antetul mesajului, nu pagina în sine. Cu această metodă este posibil să se cunoască momentul ultimei modificări la colectarea de informații de index pagini, sau pur și simplu pentru a verifica performanța adresei URL.
Metoda PUT este opusul metodei GET: citește și înregistrează pagina. Această metodă vă permite să creați un set de pagini Web pe un server de la distanță. corpul conține pagina. Acesta poate fi codificat folosind MIME. În acest caz, liniile de comanda următoare PUT pot include diferite antete, de exemplu, Content-Type autentificare antet sau care să confirme drepturile de abonat la operațiunea solicitată.
Metoda DELETE, ceea ce nu este surprinzător, pagina elimină. Ca și în metoda PUT, există un rol special poate fi jucat de autentificare și permisiunea de a efectua această operație. Chiar dacă utilizatorul are permisiunea de a șterge pagini nu există nici o garanție că metoda DELETE elimină pagina, deoarece chiar și cu acordul fișierului HTTP-server de la distanță în sine poate fi protejat de o schimbare sau mutare.
Metoda TRACE este pentru depanare. El spune ca serverul să trimită înapoi cererea. Această metodă este deosebit de utilă atunci când cererile sunt tratate în mod corect, iar clientul ar dori să afle ce cererea devine de fapt server.
Metoda CONNECT nu este utilizată în prezent. Acesta este rezervat pentru utilizare ulterioară.
Metoda OPȚIUNI permite clientului să solicite serverul cu privire la proprietățile sale sau proprietățile unui anumit fișier.
Ca răspuns la fiecare cerere de pe server primește un răspuns care conține bara de stare, precum și informații suplimentare, eventual, (de exemplu, o pagină web sau o porțiune a acesteia). Bara de stare poate conține trei cifre cod de stare, a anunțat astăzi executarea cu succes a cererii sau motivele eșecului. Prima categorie este conceput pentru a separa toate răspunsurile la cele cinci grupe principale după cum se arată în tabelul din figura 7. Codurile începând cu 1 Ahh), în practică, sunt rareori folosite. Codurile începând cu 2 indică faptul că cererea a fost procesată cu succes și date (dacă este necesar) a trimis. Codurile Zhh informează clientul că trebuie să-și încerce norocul în altă parte - folosind URL-ul sau alta, sau propria lor cache.
Figura 7 - codurile de stare pentru grupuri conținute în răspunsurile serverului
Codurile care încep cu 4, indică faptul că cererea pentru orice motiv în legătură cu clientul nu a reușit: de exemplu, a fost solicitată de către o pagină inexistentă sau cererea în sine a fost incorect. În cele din urmă, 5xx coduri de eroare de server raport a avut loc, fie din cauza unei erori de program, sau din cauza suprasolicitării temporare.
Un exemplu de utilizare a HTTP
Deoarece HTTP este un protocol de text prin comunicarea cu terminalul de server (care, în acest caz, acționează ca browser-ul opus) pot fi aranjate, pur și simplu. Este necesar doar pentru a stabili TCP-conexiunea la portul serverului 80. Cititorul este dat o oportunitate de a vedea modul în care acest scenariu (de preferat să-l rula pe un sistem UNIX, deoarece unele alte sisteme nu poate afișa starea conexiunii). Deci, secvența de comandă este după cum urmează:
Figura 8 - secvența de comenzi HTTP-protocol
Figura 9 - Start Ieșire «www.ietf.org/rfc.html» fișier
Primele trei linii în această listare a stabilit programul telnet, mai degrabă decât un site de la distanță. Dar linia care începe cu HTTP / 1.1, - acesta este un răspuns la IETF, spunând că serverul este dispus să comunice cu tine prin utilizarea HTTP / 1.1 Protocol. Ceea ce urmează este o serie de antete și, în final, chiar conținutul fișierului solicitat. Antetul ETag, care este un identificator unic asociat cu pagina cache, și X-Pad - antetul non-standard, care ajuta la combaterea erorilor browser.