předcházející následující

Hyper Text Transfer Protocol


Kapitola 3. Příkazy protokolu HTTP 1.0

Obsah

3.1. GET
3.2. HEAD
3.3. POST



Časová náročnost kapitoly: 15 minut
    Sada běžných příkazů HTTP/1.0 je popsáná dále. Tato sada příkazů může být implementátorem rozšířena, přídavné metody nemohou předpokládat stejnou sémantiku pro odděleně vytvořené servery a klienty.

3.1. GET


    Příkaz GET načte požadované informace, identifikované pomocí URL adresy, jen ze serveru. S použitím pole hlavičky If-Modified-Since je možné implementovat načtení dat, pokud byly změněny od stanoveného data. Pomocí této hlavičky jsme schopni rozhodnout, jestli data načtená v cache od minulého použití jsou aktuální, nebo je musíme načítat znovu.

Syntaxe: GET <URL> HTTP/1.0
Příklad: GET http://www.seznam.cz/index.htm HTTP/1.0

3.2. HEAD


    Metoda HEAD je identická jako metoda GET s tím rozdílem, že server nevrací žádné tělo zprávy. Metainformace obsažené v hlavičce odpovědi na požadavek příkazu HEAD jsou stejné jako u příkazu GET. Tato metoda je často používána pro testování dostupnosti nebo aktuálnosti změn odkazů. Pokud je použito pole hlavičky If-Modified-Since, je ignorováno.

Syntaxe je stejná jako u příkazu GET

3.3. POST


    Metoda POST se používá k odeslání informací na server. Nejčastější použití je odeslání dat vyplněného formuláře na server. POST je vytvořena, aby pomohla zajistit ostatním metodám tyto funkce:


    Aktuální funkce prováděné metodou POST jsou odvozeny serverem a obvykle závisejí na požadavkové URI. Pomocí URI se rozlišuje operace s daty prováděná.
    Při použití metody POST je vyžadováno správně vyplněné pole hlavičky Content-Length. Server může odpovědět chybovou zprávou 400 (bad request), pokud nedokáže určit velikost obsahu zprávy. Aplikace nesmí cachovat odpovědí na příkaz POST, protože nemají žádnou možnost jak zjistit, zda server v budoucnu na stejný požadavek odpoví stejně.

3.4. Cvičení


Zadání:
    Které příkazy se používají k odeslání dat na server a které slouží k získání informací ze serveru?

3.5. Cvičení


Zadání:
    Jaké operace můžeme realizovat pomocí příkazu POST?

3.6. Cvičení


Zadání:
    Jaký je rozdíl v použití příkazů GET a HEAD?




předcházející následující