HTTP správy pozostávajú z obyčajného ASCII textu. Správa obsahuje hlavičku a časť s obsahom dát. Hlavička správy je jednotkou správania a každý riadok končí CRLF (návrat vozíka a zalomenie riadku). http žiadosť:
Príklady sú nasledovné:
GET/sample.jspHTTP/1.1
Accept:image/gif.image/jpeg,*/*
Accept-Language:zh-cn
Connection:Keep-Alive
Host:localhost
User-Agent:Mozila/4.0(compatible;MSIE5.01;Window NT5.0)
Accept-Encoding:gzip,deflate
username=jinqiao&password=1234 RequestMethod: OPTIONS,, POST, PUT, STORETE, TRACE a CONNECT.
GET požiadavka na získanie zdroja identifikovaného Request-URI POST pridáva nové údaje za zdrojom identifikovaným Request-URI HEAD request na získanie hlavičky odpovednej správy zdroja identifikovaného Request-URI PUT server požiadaviek ukladá zdroj a používa Request-URI ako jeho identifikátor DELETE Server požiadaviek vymaže zdroj identifikovaný URI požiadavky TRACE server požiadaviek vracia prijaté informácie o požiadavkách, ktoré sa používajú najmä na testovanie alebo diagnostiku CONNECT je vyhradený pre budúce použitie OPTIONS žiada dotaz na výkon servera alebo na otázky a požiadavky týkajúce sa daného zdroja
User-Agent: Informácie o prehliadači klienta. Connection:close označuje použitie krátkeho spojenia a Keep-Alive znamená, že klient podporuje trvalé pripojenia. Dátum: Aktuálny čas, kedy bola správa vygenerovaná. Akceptačný jazyk: Jazyk podporovaný klientom. Riadenie cache: Či klient podporuje cache. no-cache znamená, že klient nepodporuje cache, napríklad max-age=3600, hovorí User Agentovi, ako dlho je odpoveď na požiadavku platná, a počas platnosti, keď používateľ opäť potrebuje prístup, ju možno priamo z klienta lokálne extrahovať bez potreby prístupu k serveru. Referer: Referer hovorí serveru, z ktorej URL adresy požiadavka pochádza, čo môže byť použité na sledovanie prístupovej cesty používateľa na web.
If-Modified-Since: 如果请求消息包含If-Modified-Since标题 域,GET方法的语法就变成“条件GET”,即“(conditional GET)”。 条件GET方法可以对指定资源进行判断,如果它在If-Modified-Since标题域中的指定日期后发生了更新,才启动传输,否则不传输。这种条件 GET允许被缓存的实体在不必经过多次请求或不必要的数据传输就能进行刷新,从而有助于降低网络负载。
Last-Modified: Sun, 03 Dec 2008 23:52:56 GMT
ETag: “1cbf3-dfd-3a2adcd8″ Vo všeobecnosti sa používa pri sťahovaní súborov na identifikáciu času poslednej úpravy obsahu odpovede alebo na overenie obsahu, a keď ho ďalší užívateľský agent potrebuje, služba najprv zistí, či sú tieto dve hodnoty rovnaké ako na serveri, a nemusí vrátiť obsah. Expiruje: Kedy vyprší výsledok odpovede na požiadavku a pred jeho vypršaním môže agent vrátiť predchádzajúci výsledok odpovede priamo z cache. Hostiteľ: Špecifikuje číslo hostiteľa a portu žiadajúceho zdroja. HTTP/1.1 požiadavky musia špecifikovať Hostiteľ, inak server vráti stavový kód 400.
http odpoveď: Príklady sú nasledovné: HTTP/1.1 200 OK
Date: Mon, 04 May 2015 04:47:13 GMT
Server: Apache
Cache-Control: max-age=0
Expires: Mon, 04 May 2015 04:47:13 GMT
Vary: Accept-Encoding,User-Agent
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html;charset=utf-8
X-Pad: avoid browser bug
Stavový riadok obsahuje: číslo verzie HTTP protokolu, stavový kód a textový popis stavového kódu. Napríklad: HTTP/1.1 200 OK Stavový kód pozostáva z trojmiestneho čísla a stavový kód má približne 5 významov: 1. 1xx。 Informácie, žiadosť prijatá, pokračujte v spracovaní. 2. 2xx。 Úspech. 200 žiadostí je úspešných; 206 Breakpoint pokračoval. 3. 3xx。 Presmerovať. Vo všeobecnosti preskočte na novú adresu. 4. 4xx。 Chyba klienta. Súbory 404 neexistujú 5. 5xx。 Chyba servera. 500 interných chýb.
Set-Cookie: Server nastavuje klientsky cookie. Formát nastavenia je meno=hodnota a pri nastavovaní viacerých parametrov je stred oddelený bodkočiarkom. Set-Cookie tiež používa niekoľko parametrov: PATH nastavuje platnú cestu, DOMAIN nastavuje doménové meno, kde cookie nadobúda účinok, Expire nastavuje čas platnosti cookie a 0 znamená, že vyprší po zatvorení prehliadača. locatio{filter}n: Tento parameter implementuje presmerovanie, keď server vráti 3xx presmerovanie. Tento protokol sa používa na preskakovanie reklamných odkazov. Dĺžka obsahu: Dĺžka prívesku (dátovej entity). |