Introducere. Structura tehnologiilor Web
Scopul prelegerii pentru a arăta modul în care tehnologiile web puse în aplicare principiile generale ale tehnologiei client-server. Luați în considerare elementele cheie ale protocolului HTTP de bază.
Subiectul acestui curs este o rețea globală de tehnologie World Wide Web (WWW abreviat sau pur și simplu Web). În opțiunea comună limba rusă se numește „Web“.
În special, cursul va aborda astfel de probleme ca: standarde de bază web și protocoale de rețea, limbaje de programare și markup pagina web, instrumente de dezvoltare, și de gestionare a conținutului web și aplicații pentru Web, înseamnă integrare a conținutului web și aplicații de pe Web.
Rețeaua de web este un spațiu informațional global bazat pe infrastructura fizică a protocolului de comunicare pe Internet și HTTP. De multe ori, vorbind despre Internet înseamnă că rețeaua web.
Cele care stau la baza de protocol de rețea resurse hipertext Web este protocolul HTTP. Ea se bazează pe interacțiunea dintre „client-server“, adică, se presupune că:
Clientul utilizator inițiază conexiunea la serverul furnizorului acesta trimite o cerere;
Furnizor de server. primirea cererii, aceasta efectuează acțiunile necesare și se întoarce înapoi răspunsul la client cu rezultatul.
Există două modalități posibile de organizare a activității calculatorului client:
Thin Client - un computer client, care transportă toate sarcinile de prelucrare a informațiilor de pe server. Un exemplu de client subțire poate oferi computerul cu un browser care este folosit pentru a lucra cu aplicatii Web.
thick client. pe de altă parte, procesează informația, indiferent de serverul utilizează ultima practic numai pentru stocarea de date.
Înainte de a porni la tehnologiile specifice web client-server, ia în considerare principiile de bază și structura protocolului HTTP de bază.
protocolul hTTP
HTTP (Hypertext Transfer Protocol - RFC 1945, RFC 2616) - Aplicarea protocolului strat pentru transferul hypertext.
Obiectul centrală într-o resursă HTTP. care indică URI-ul în cererea clientului. De obicei, aceste resurse sunt stocate pe serverul de fișiere. O caracteristică a protocolului HTTP este abilitatea de a specifica în cererea și răspunsul modul de prezentare a aceleiași resurse de diferiți parametri:. Format, codificare, limba și așa mai departe D. Este datorită posibilității de a specifica o metodă de codificare de mesaje client și server poate face schimb de date binare, deși inițial acest protocol Acesta este conceput pentru a transmite informațiile de caractere. La prima vedere, acest lucru poate părea o risipă de resurse. Într-adevăr, datele ocupă simbolic mai multă memorie, mesaje pune presiune suplimentară pe canalele de comunicare, dar acest format are mai multe avantaje. Mesajele transmise prin rețea, care poate fi citită, și analiza datelor, administratorul de sistem poate găsi cu ușurință eroarea și corectați-l. Dacă este necesar, rolul uneia dintre aplicațiile interactive pot executa persoane care intră manual mesajele în formatul dorit.
Servere - distribuitorii de servicii de stocare și prelucrare a datelor (cereri de procesare).
Clienții - utilizatorii finali de servicii de server (trimite cerere).
Serverele proxy pentru a susține funcționarea serviciilor de transport.
„Clasic“ HTTP-sesiune, sistemul arată.
Astfel, clientul trimite o cerere la server, primește un răspuns de la ea, după care încetează reacția. De obicei, cererea de client este o cerere de a transfera HTML-document sau orice altă resursă, iar răspunsul serverului conține codul pentru această resursă.
Structura HTTP-cererea transmise de la client la server, include următoarele componente.
State Line (uneori, de asemenea, se referă la utilizarea sa de membru termeni rând sau șirul de interogare).
Bara de stare cu câmpurile de antet sunt denumite uneori ca titlul cererii.
Fig. 1.1. Structura cererii clientului.
Bara de stare are următorul format:
metod_zaprosa URL_pecypca versiya_protokola_NTTR
Luați în considerare componentele bara de stare, acordând o atenție deosebită acordată metodelor cererii.
Metoda. a declarat bara de stare, metoda determină influența asupra resursei, URL-ul este specificat pe același rând. Metoda poate lua valorile GET, POST, HEAD, PUT, DELETE, etc. În ciuda abundenței de metode pentru programator web foarte important, doar două dintre ele: GET si POST.
GET. Conform definiției formale, metoda GET este menită să ofere o resursă cu URL-ul specificat. După ce a primit o solicitare GET, serverul trebuie să citească resursa specificată și codul de resurse pentru a include în răspunsul la client. Resource, URL-ul este trecut ca parte a interogării nu trebuie să fie o pagină HTML, fișier imagine sau alte date. URL-ul de resurse poate indica un cod de program executabil, care, în anumite condiții, trebuie să se execute pe server. În acest caz, clientul nu returnează codul de program și datele generate în procesul de implementare a acestuia. În ciuda faptului că, prin definiție, metoda GET este destinat să furnizeze informații, acesta poate fi, de asemenea, folosite în alte scopuri. Metoda GET este bine adaptată pentru transferul bucăți mici de date la server.
POST. Conform aceleiași definiții formale, scopul principal al POST metoda - transmiterea de date către server. Cu toate acestea, la fel ca metoda GET, metoda POST poate fi aplicată în diferite moduri și este adesea folosit pentru a obține informații de la server. Așa cum este cazul cu metoda GET, URL-ul, setați în bara de stare indică anumite resurse. Metoda POST poate fi de asemenea utilizat pentru a începe procesul.
HEAD si PUT metode sunt modificări ale metodelor GET și POST.
Versiunea protocolul HTTP. de regulă, este în următorul format:
câmp de antet. după bara de stare, permite specificarea unei solicitări, și anume transmite informații suplimentare. câmp de antet are următorul format:
câmpul destinație definit prin numele său, care este separat de valorile colonului.
Numele unora dintre cele mai frecvent întâlnite în câmpurile de antet cererea clientului și scopul acestora sunt prezentate în tabelul. 1.1.
Tabelul 1.1. cerere HTTP câmp de antet.
Directiva Cache-Control. De exemplu, nu-cache înseamnă că datele nu ar trebui să fie în cache
Mai jos este un răspuns eșantion de la server la interogarea în secțiunea anterioară. Corpul răspunsului conține textul original al HTML-document.
operand1:
operand2:
câmpurile de antet și corpul mesajului poate fi absent, dar starea liniei este un element indispensabil, deoarece indică tipul de cerere / răspuns.
Câmp numit-tip de conținut pot fi găsite în cererea clientului și răspunsul serverului. Valoarea acestui câmp este specificat cerere sau un răspuns de tip MIME conținut. MIME de tip, de asemenea, transmise la câmpul antet Accept este prezent în cerere.
Specificarea MIME (Multipurpose Internet Mail Extension - o extensie multifuncțional e-mail prin Internet) a fost inițial dezvoltat pentru a asigura transmiterea diferitelor formate de date, ca parte a e-mail-uri. Cu toate acestea, aplicarea MIME nu se limitează doar la e-mail. Fondurile MIME au fost utilizate cu succes în WWW și, de fapt, să devină o parte integrantă a acestui sistem.
standardul MIME este conceput ca o specificație extensibila, ceea ce înseamnă că numărul de tipuri de date va crește odată cu dezvoltarea formelor de prezentare a datelor. Fiecare nou tip de obligatoriu trebuie să fie înregistrate cu IANA (Internet Assigned Numbers Authority).
Înainte de apariția calculatoarelor MIME care comunică folosind protocolul HTTP, schimb de informații exclusiv textuale. Pentru a transfera imagini, precum și pentru transmiterea oricăror alte fișiere binare, am avut de a utiliza protocolul FTP.
În conformitate cu caietul de sarcini MIME. pentru a descrie formatul de date utilizat de tipul și subtipul. Tipul determină ce clasă format HTTP-cerere sau HTTP-răspuns. Subtip specifică formatul. Tipul și subtipul sunt separate printr-o bară oblică:
Ca și în cele mai multe cazuri, ca răspuns la o cerere de client, serverul returnează codul sursă de document HTML, în răspunsul de tip de conținut, de obicei, conține textul de valoare / html. Aici textul descrie identificatorul de tip, indicând faptul că clientul este transferat la informațiile de caractere, și identificatorul html descrie subtip, și anume Aceasta indică faptul că secvența de simboluri conținute în corpul de răspuns este un document de HTML descriere limbaj.
O listă a tipurilor MIME și subtipuri este suficient de mare. Tabel. 1.4 sunt exemple de tipuri MIME, cele mai comune titluri HTML-cereri și răspunsuri.
Tabelul 1.4. MIME tipuri de date.
Pentru a identifica în mod unic resursele web în rețeaua utilizează un URL identificator unic.
Uniform Resource Identifier URI (Uniform Resource Identifier) este o scurtă secvență de caractere care identifică o resursă abstractă sau fizică. URI-ul nu indică modul de obținere a resurselor, ci doar identifică. Acest lucru face posibil pentru a descrie utilizarea RDF (Resource Description Framework), resurse care nu pot fi obținute prin Internet (nume, titluri, etc). Exemplele cele mai cunoscute sunt URI - această adresă URL și URN.
URL (Uniform Resource Locator) - acest URI, care, în plus față de identificarea unei resurse, oferă mai multe informații și locația resursei.
URN (Uniform Resource Name) - acest URI, care identifică o resursă într-un anumit spațiu de nume, dar, spre deosebire de URL-ul, URN nu indică locația resursei.
URL-ul are următoarea structură:
Schema - circuitul de referință de resurse (de obicei, un protocol de rețea);
autentificare - numele de utilizator folosit pentru a accesa resursa;
parola - parola asociată cu numele de utilizator specificat;
Port - portul gazdă pentru conexiunea;
URL-way - informații precise privind localizarea resursei.