HTTP pranešimai sudaryti iš paprasto ASCII teksto. Pranešime yra antraštė ir duomenų pagrindinė dalis. Pranešimo antraštė yra elgsenos vienetas, o kiekviena eilutė baigiasi CRLF (vežimėlio grįžimas ir eilutės lūžis). HTTP užklausa:
Pavyzdžiai yra šie:
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
vartotojo vardas=jinqiao&slaptažodis=1234 RequestMethod: OPTIONS,, POST, PUT, DELETE, TRACE ir CONNECT.
GET užklausa, kad gautumėte išteklius, identifikuotus užklausos URI POST prideda naujus duomenis po ištekliaus, identifikuoto užklausos URI HEAD užklausa, kad gautumėte užklausos URI identifikuoto ištekliaus atsakymo pranešimo antraštę PUT užklausų serveris saugo išteklius ir naudoja užklausos URI kaip identifikatorių DELETE Užklausos serveris panaikina išteklius, identifikuotus pagal užklausos URI TRACE užklausų serveris pateikia gautą užklausos informaciją, kuri daugiausia naudojama testavimui ar diagnostikai CONNECT skirtas naudoti ateityje OPTIONS prašo užklausti serverio našumą arba su ištekliumi susijusias parinktis ir reikalavimus
User-Agent: kliento naršyklės informacija. Connection:close nurodo, kad naudojamas trumpas ryšys, o Keep-Alive rodo, kad klientas palaiko nuolatinius ryšius. Data: dabartinis pranešimo generavimo laikas. Accept-Language: kliento palaikoma kalba. Talpyklos valdymas: ar klientas palaiko talpyklą. no-cache reiškia, kad klientas nepalaiko talpyklos, pvz., max-age=3600, nurodo vartotojo agentui, kiek laiko galioja užklausos atsakymo rezultatas, o galiojimo laikotarpiu, kai vartotojui vėl reikia prieigos, jį galima išgauti tiesiai iš kliento vietoje, nereikia prisijungti prie serverio. Persiuntėjas: Persiuntėjas nurodo serveriui, iš kurio URL gaunama užklausa, kuri gali būti naudojama vartotojo žiniatinklio prieigos keliui sekti.
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″ Paprastai jis naudojamas atsisiunčiant failus, kad būtų nustatytas paskutinis atsakymo turinio modifikavimo laikas arba turinys yra labiau patikrintas, o kai to prireiks kitam vartotojo agentui, paslauga pirmiausia nustatys, ar šios dvi reikšmės yra tokios pačios kaip serveryje, ir tam nereikia grąžinti turinio. Galiojimo laikas: kada baigiasi užklausos atsakymo rezultato galiojimo laikas ir prieš jam pasibaigus, agentas gali grąžinti ankstesnį atsakymo rezultatą tiesiai iš talpyklos. Pagrindinis kompiuteris: nurodo užklausą pateikusio ištekliaus pagrindinį kompiuterį ir prievado numerį. HTTP/1.1 užklausose turi būti nurodytas pagrindinis kompiuteris, kitaip serveris grąžina 400 būsenos kodą.
HTTP atsakymas: Pavyzdžiai yra šie: HTTP/1.1 200 Gerai
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
Būsenos eilutėje yra: HTTP protokolo versijos numeris, būsenos kodas ir tekstinis būsenos kodo aprašymas. Pavyzdžiui: HTTP/1.1 200 OK Būsenos kodą sudaro trijų skaitmenų skaičius, o būsenos kodas turi maždaug 5 reikšmes: 1. 1xx。 informacija, gauta užklausa, tęsti apdorojimą. 2. 2xx。 Sėkmė. 200 užklausų yra sėkmingos; 206 Lūžio taškas tęsėsi. 3. 3xx。 Peradresuoti. Paprastai pereikite prie naujo adreso. 4. 4xx。 Kliento klaida. 404 failų nėra 5. 5xx。 Serverio klaida. 500 vidinių klaidų.
Set-Cookie: serveris nustato kliento pusės slapuką. Nustatymo formatas yra name=value, o nustatant kelis parametrus, vidurys atskiriamas kabliataškiu. Set-Cookie taip pat naudoja kelis parametrus: PATH nustato galiojantį kelią, DOMAIN nustato domeno vardą, kuriame slapukas įsigalioja, Expire nustato slapuko galiojimo laiką, o 0 reiškia, kad jis baigsis uždarius naršyklę. locatio{filter}n: Šis parametras įgyvendina peradresavimą, kai serveris grąžina 3xx peradresavimą. Šis protokolas naudojamas reklaminių nuorodų šuoliui. Turinio ilgis: priedo (duomenų objekto) ilgis. |