Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

HTTP-protokollatMyn1 HTTP-protokolla HTTP (HyperText Transfer Protocol) on web-asiakkaan ja –palvelimen keskinäiseen tiedonsiirtoon käyttämä yhteyskäytäntö.

Samankaltaiset esitykset


Esitys aiheesta: "HTTP-protokollatMyn1 HTTP-protokolla HTTP (HyperText Transfer Protocol) on web-asiakkaan ja –palvelimen keskinäiseen tiedonsiirtoon käyttämä yhteyskäytäntö."— Esityksen transkriptio:

1 HTTP-protokollatMyn1 HTTP-protokolla HTTP (HyperText Transfer Protocol) on web-asiakkaan ja –palvelimen keskinäiseen tiedonsiirtoon käyttämä yhteyskäytäntö. Nimestään huolimatta HTTP-protokolla ei rajoitu pelkästään HTML-dokumenttien siirtämiseen, vaan sillä voi siirtää monenlaista dataa. Palvelin kertoo yleensä siirrettävän datan tyypin ContentType-otsakkeessa. Tarkastellaan seuraavaksi HTTP-siirtotapahtumaa, kuva 1.

2 HTTP-protokollatMyn2 WEB-selain WEB-palvelin Asiakaspyyntö Pyyntörivi HTTP- otsakkeet Data Palvelimen vastaus HTTP- otsakkeet Data 1 2 Tilarivi Kuva 1. HTTP-siirtotapahtuma.

3 HTTP-protokollatMyn3 HTTP-siirtotapahtuma koostuu kahdesta HTTP-viestistä (HTTP message), jotka ovat: 1. Asiakaspyyntö (HTTP request), jonka sisältönä on –Pyyntörivi (Request Line) –HTTP-otsakkeet –data 2. Palvelimen vastaus (HTTP response), jonka sisältönä on –Tilarivi (Status Line) –HTTP-otsakkeet –data

4 HTTP-protokollatMyn4 HTTP-asiakaspyyntö etenee seuraavassa muodossa: 1. Asiakas ottaa yhteyden halutun palvelimen tiettyyn porttiin (yleensä 80). 2. Asiakas lähettää HTTP-komennon (pyyntörivi), jonka kolmesta välilyönnillä erotetusta kentästä löytyy –Käytettävä metodi –Pyydettävä dokumentti –HTTP:n versio. Esim. GET / manual / HTTP / 1.0

5 HTTP-protokollatMyn5 3. Asiakas lähettää mahdolliset HTTP-otsakkeet riveittäin. Kukin rivi koostuu otsakkeen nimestä, kaksoispisteestä, välilyönnistä ja otsakkeen arvosta sekä rivinvaihtomerkistä (CRLF). Web-selain voi kertoa näin esimerkiksi nimensä, hyväksymänsä dokumenttityypit, toivomansa kielen jne. Esim. User-agent: Mozilla… Accept: image/gif, … Accept-Language: fi, en-us; …

6 HTTP-protokollatMyn6 4. Asiakas lähettää rivinvaihtomerkin (CRLF eli tyhjän rivin). 5. Asiakas voi lähettää muuta dataa. Näin tapahtuu esim. silloin, kun web-selain lähettää HTML-lomakkeen sisältämän datan POST-metodilla. 6. Pyyntö päättyy kahteen peräkkäiseen rivinvaihtomerkkiin. Seuraavaksi on esitetty skripti asiakaspyynnön lähettämän datan näyttämistä varten:

7 HTTP-protokollatMyn7 HTML-lomake:

8 HTTP-protokollatMyn8 Tarvittava PHP-skripti:

9 HTTP-protokollatMyn9

10 HTTP-protokollatMyn10 Description array getallheaders ( void ) Fetches all HTTP headers from the current request. This function is an alias for apache_request_headers(). Please read theapache_request_headers() apache_request_headers() documentation for more information on how this function works. This function is only supported when PHP is installed as an Apache module. Return Values An associative array of all the HTTP headers in the current request, or FALSE on failure.

11 HTTP-protokollatMyn11 Lähetetään palvelimelle jotakin lomakkeen avulla:

12 HTTP-protokollatMyn12 Tällaista informaatiota selain lähettää web-palvelimelle:

13 HTTP-protokollatMyn13

14 HTTP-protokollatMyn14 Kun asiakas on lähettänyt HTTP-pyynnön, palvelin vastaa siihen. Palvelimen vastaus etenee seuraavassa muodossa: 1. Palvelin vastaa tilarivillä, jonka kolmesta välilyönneillä erotetusta kentästä löytyy –HTTP:n versio –Tilakoodi –Tilakoodin tekstimuotoinen selitys. Esim. HTTP / 1.0 200 OK

15 HTTP-protokollatMyn15 2. Palvelin lähettää mahdolliset HTTP-otsakkeet riveittäin. Kukin rivi koostuu otsakkeen nimestä, kaksoispisteestä, välilyönnistä ja otsakkeen arvosta sekä rivinvaihtomerkistä (CRLF). Tyypillisesti voidaan kertoa esim. vastauksen luontiaika, tietoja palvelimesta ja palautettavan dokumentin sisältötyyppi. Esim. Date: Mon, … Apache… Content-Type: text/html; charset…

16 HTTP-protokollatMyn16 3. Palvelin lähettää rivinvaihtomerkin (CRLF). 4. Pyynnön onnistuessa vastaukseksi lähetetään mahdollisesti haluttu data. Käydään seuraavaksi vanhassa kotikunnassa Askolassa katsomassa mikä palvelin siellä on:

17 HTTP-protokollatMyn17

18 HTTP-protokollatMyn18

19 HTTP-protokollatMyn19 Palvelimena näyttää olevan Apache:

20 HTTP-protokollatMyn20 jne…

21 HTTP-protokollatMyn21 Mitähän palvelinta Nokia käyttää?:

22 HTTP-protokollatMyn22 Jaaha, näyttää olevan tyyppiä ”Nokia”:

23 HTTP-protokollatMyn23 HTTP on tilaton protokolla. Peräkkäisten siirtotapahtumien välillä ei ole mahdollista pitää tilatietoa protokollan avulla (vrt. istunnonhallinta). Näin ollen –Tapahtumien seuranta ei kuormita HTTP:tä, mikä tekee siitä jossakin mielessä nopean ja keveän protokollan –Jokainen HTTP-siirtotapahtuma on aloitettava aivan alusta, minkä vuoksi web-sovellusten ohjelmointi on työlästä.

24 HTTP-protokollatMyn24 Web-selaimen tilalla tarkoitetaan kaikkea seuraavalla pyynnöllä välitettävissä olevaa dataa, joka on tallennettuna mm. lomakkeen kenttiin, hyperlinkkien kyselyosiin ja evästeisiin. Koska siirtotapahtumien välillä ei ole mitään yhteyttä, sovelluksen tilatiedot täytyy ylläpitää tilanteesta riippuen palvelinskriptin luomissa tai asettamissa –HTML-lomakkeissa –Hyperlinkeissä URL:in kyselyosassa –Evästeissä (cookies).

25 HTTP-protokollatMyn25 Jos tarkastellaan palvelinskriptin kommunikointia käyttöliittymänsä (web-selain) kanssa erikseen molempiin suuntiin, voidaan sanoa, että palvelinskriptiin liittyy neljä keskeisesti erilaista datan välitystapaa. Syöttökanavia on kaksi, eli palvelinskripti voi saada syötteensä web-selaimelta jommallakummalla tavalla: –HTML-lomakkeelta joko POST- tai GET-metodilla –Hyperlinkin välityksellä siihen liitetystä URL:in kyselyosasta GET-metodilla.

26 HTTP-protokollatMyn26 Tulostuskanavia on myös kaksi. Palvelinskripti lähettää tulosteensa web-selaimelle jommallakummalla tavalla: –HTTP-otsakkeiden välityksellä (mm. kertoo dokumentin mediatyypin, asettaa evästeitä, uudelleenohjaa pyynnön jne.) –Palvelimen vastauksen (HTTP Response) data-osassa.


Lataa ppt "HTTP-protokollatMyn1 HTTP-protokolla HTTP (HyperText Transfer Protocol) on web-asiakkaan ja –palvelimen keskinäiseen tiedonsiirtoon käyttämä yhteyskäytäntö."

Samankaltaiset esitykset


Iklan oleh Google