Protokol HTTP

Z MiS
Verze z 4. 5. 2020, 08:04; Spravce (diskuse | příspěvky)
(rozdíl) ← Starší verze | zobrazit aktuální verzi (rozdíl) | Novější verze → (rozdíl)
Přejít na: navigace, hledání


Obsah

Protokol HTTP


Chování klienta a serveru

Příprava na stažení webové stránky

  1. Uživatel zadá adresu do adresního řádku prohlížeče.
  2. Pro navázání spojení se serverem je třeba získat IP adresu serveru.
  3. Prohlížeč proto osloví DNS server
  • DNS server přeloží textovou adresu na IP adresu (například www.oauh.cz => 212.111.4.142).
Tato komunikace ještě přímo nesouvisí s protokolem HTTP, využíváme zde Protokol DNS.

HTTP: Odeslání příkazu a přijetí odpovědi

  1. Prohlížeč naváže spojení se servrem pomocí IP adresy (využije služeb protokolu TCP).
  2. => prohlížeč pošle příkaz GET nazev_stranky.htm
    • K požadavku může připojit ještě další informace: hlavičky protokolu HTTP.
<= server najde soubor a pošle zpět obsah souboru (HTML kód)
  1. Prohlížeč vykreslí stránku podle popisu v jazyce HTML

Zpracování požadavku: dynamické stránky

HTTP: Odpověď serveru

  1. Přijetím odpovědi komunikace končí.
  2. Protože je protokol bezstavový, může server zapomenout veškeré informace. Příští spojení bude zcela nezávislé na tomto.

Obrázky a jiné objekty ve stránkách

Protokol HTTP verze 1.1 umožňuje po ukončení komunikace (po přijetí odpovědi) ihned poslat další požadavek bez ukončení spojení. Server tedy spojení neuzavírá ihned po odeslání odpovědi, ale až s nějakým zpožděním.



Příkazy HTTP

Příkaz GET

Další příkazy

POST
PUT
DELETE


Hlavičky protokolu HTTP

Verze protokolu HTTP

Úkol: Prohlédněte si komunikaci

Úkol
Prohlédněte si komunikaci mezi klientem a serverem
  1. Najděte stránku WebSniffer.cc.
  2. Zadejte nějakou URL adresu do okénka.
  3. Web sniffer vám vypíše kompletní komunikaci mezi vaším prohlížečem a serverem.
  4. Zobrazen máte požadavek s odeslanými hlavičkami i přijatou odpověď včetně hlaviček, které poskytuje server.


Úkol: Odeslání požadavku ručně

Úkol: Vyzkoušejte si ručně, co musí udělat prohlížeč!
  • Vyberte si web, ke kterému se zkusíte připojit. (V našem příkladu píšeme www.oauh.cz. Vy napište skutečnou URL adresu bez HTTP.
  • Do poznámkového bloku (či jiného čistě textového editoru) si připravte požadavek:
GET / HTTP 1.1
Host: www.oauh.cz
<prázdný řádek>
  • Připravený požadavek (včetně prázdného řádku na konci) zkopírujte do schránky.
  • Spusťte program PuTTY a vyplňte údaje pro připojení k serveru.
    • Server: www.oauh.cz
    • Port: 80
  • Ihned po navázání spojení klikněte do okénka PuTTY pravým tlačítkem.
    • Tím provedete operaci „paste“: odešlete otevřeným spojením celý obsah schránky Windows (ve schránce máte připravený požadavek HTTP GET).
  • Zkontrolujte odpověď.
    • Odpověď serveru by měla začínat: 200 OK
    • Pokud je odpověď jiná, najděte chybový kód a upravte postup.
Obvyklé chyby
  • Chybějící hlavička Host:
  • Špatná velikost písmen (dodržte malá a velká písmena podle vzoru).
  • Chybějící prázdný řádek na konci (požadavek končí prázdným řádkem — dvěma dvojicemi CR+LF).
Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje