HTTP協(xié)議常用的請(qǐng)求頭和響應(yīng)頭響應(yīng)詳解說(shuō)明(學(xué)習(xí))
目錄
- 一、前言
- 二、Http請(qǐng)求頭:
- 1、Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
- 2、 Accept-Encoding:gzip, deflate
- 3、 Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
- 4、 Connection:keep-alive;
- 5、 Cookie:JSESSIONID=2B5F5F6380CA6339CEF98AD9A9E95AB4
- 6、 Host:localhost:8080
- 7、 User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:55.0) Gecko/20100101 Firefox/55.0
- 8、 Pragma
- 三、 Http響應(yīng)頭
- 1、 Content-Language:zh-CN
- 2、 Content-Length:317
- 3、 Content-Type:text/html;charset=UTF-8
- 4、 Date:Thu, 07 Sep 2017 14:34:35
- 5、 GMTServer:Apache-Coyote/1.1
- 6、 HTTP/1.1 200 OK
通常HTTP消息包括客戶機(jī)向服務(wù)器的請(qǐng)求消息和服務(wù)器向客戶機(jī)的響應(yīng)消息。這兩種類型的消息由一個(gè)起始行,一個(gè)或者多個(gè)頭域,一個(gè)只是頭域結(jié)束的空行和可選的消息體組成。HTTP請(qǐng)求頭提供了關(guān)于請(qǐng)求,響應(yīng)或者其他的發(fā)送實(shí)體的信息。HTTP的頭信息包括通用頭、請(qǐng)求頭、響應(yīng)頭和實(shí)體頭四個(gè)部分。每個(gè)頭域由一個(gè)域名,冒號(hào)(:)和域值三部分組成。
一、前言
一次完整的HTTP請(qǐng)求所經(jīng)歷的7個(gè)步驟
說(shuō)明:HTTP通訊機(jī)制是在一次完整的HTTP通訊過(guò)程當(dāng)中,web瀏覽器與web服務(wù)器之間將完成下列7個(gè)步驟:緩存
- 創(chuàng)建TCP鏈接
- Web瀏覽器向web服務(wù)器發(fā)送請(qǐng)求命令 例如:GET /sample/hello.jsp HTTP 1.1
- Web瀏覽器發(fā)送請(qǐng)求頭信息
- Web服務(wù)器應(yīng)答 例如:HTTP/1.1 200 ok
- Web服務(wù)器發(fā)送應(yīng)答頭信息
- Web服務(wù)器向?yàn)g覽器發(fā)送數(shù)據(jù)
- Web服務(wù)器關(guān)閉TCP鏈接
二、Http請(qǐng)求頭:
1、Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
意思:瀏覽器支持的請(qǐng)求 MIME 類型分別是 text/html、application/xhtml+xml、application/xml 和 */*,優(yōu)先順序是它們從左到右的排列順序
詳解:
Accept表示瀏覽器支持的 MIME 類型;
MIME的英文全稱是 Multipurpose Internet Mail Extensions(多功能 Internet 郵件擴(kuò)充服務(wù)),它是一種多用途網(wǎng)際郵件擴(kuò)充協(xié)議,在1992年最早應(yīng)用于電子郵件系統(tǒng),但后來(lái)也應(yīng)用到瀏覽器。
text/html,application/xhtml+xml,application/xml 都是 MIME 類型,也可以稱為媒體類型和內(nèi)容類型,斜杠前面的是 type(類型),斜杠后面的是 subtype(子類型);type 指定大的范圍,subtype 是 type 中范圍更明確的類型,即大類中的小類。
Text:用于標(biāo)準(zhǔn)化地表示的文本信息,文本消息可以是多種字符集和或者多種格式的;
text/html :表示 html 文檔;
Application:用于傳輸應(yīng)用程序數(shù)據(jù)或者二進(jìn)制數(shù)據(jù);
application/xhtml+xml :表示 xhtml 文檔;
application/xml:表示 xml 文檔。
2、 Accept-Encoding:gzip, deflate
意思:瀏覽器支持的壓縮編碼是 gzip 和 deflate。
詳解:
Accept-Encoding表示瀏覽器有能力解碼的編碼類型;
gzip是 GNU zip 的縮寫,它是一個(gè) GNU 自由軟件的文件壓縮程序,也經(jīng)常用來(lái)表示 gzip 這種文件格式。
deflate是同時(shí)使用了 LZ77 算法與哈夫曼編碼(Huffman Coding)的一個(gè)無(wú)損數(shù)據(jù)壓縮算法。
3、 Accept-Language:zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
意思:瀏覽器支持的語(yǔ)言分別是中文和簡(jiǎn)體中文,優(yōu)先支持簡(jiǎn)體中文。
4、 Connection:keep-alive;
Connection表示客戶端與服務(wù)連接類型;
Keep-Alive表示持久連接;
如果Servlet看到這里的值為“Keep - Alive”,或者看到請(qǐng)求使用的是HTTP 1.1(HTTP 1.1默認(rèn)進(jìn)行持久連接),它就可以利用持久連接的優(yōu)點(diǎn),當(dāng)頁(yè)面包含多個(gè)元素時(shí)(例如Applet,圖片),顯著地減少下載所需要的時(shí)間。要實(shí)現(xiàn)這一點(diǎn),Servlet需要在應(yīng)答中發(fā)送一個(gè)Content - Length頭,最簡(jiǎn)單的實(shí)現(xiàn)方法是:先把內(nèi)容寫入ByteArrayOutputStream,然后在正式寫出內(nèi)容之前計(jì)算它的大小。
5、 Cookie:JSESSIONID=2B5F5F6380CA6339CEF98AD9A9E95AB4
緩存的sessionID和瀏覽器中的緩存,沒(méi)有緩存是無(wú)法實(shí)現(xiàn)session相關(guān)功能的。
6、 Host:localhost:8080
Host表示請(qǐng)求的服務(wù)器網(wǎng)址;
7、 User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10.11; rv:55.0) Gecko/20100101 Firefox/55.0
意思:使用的用戶代理是 Mozilla/5.0 (compatible; 域名)。
8、 Pragma
指定“no - cache”值表示服務(wù)器必須返回一個(gè)刷新后的文檔,即使它是代理服務(wù)器而且已經(jīng)有了頁(yè)面的本地拷貝,常用來(lái)禁止緩存。
三、 Http響應(yīng)頭
1、 Content-Language:zh-CN
響應(yīng)的語(yǔ)言類型,中文簡(jiǎn)體
2、 Content-Length:317
響應(yīng)的內(nèi)容的長(zhǎng)度
3、 Content-Type:text/html;charset=UTF-8
響應(yīng)具體MIME類型
4、 Date:Thu, 07 Sep 2017 14:34:35
響應(yīng)時(shí)間
5、 GMTServer:Apache-Coyote/1.1
響應(yīng)的服務(wù)器類型
6、 HTTP/1.1 200 OK
響應(yīng)的狀態(tài)碼
詳解:
在本例中,狀態(tài)行給出的HTTP狀態(tài)代碼是200,以及消息OK。狀態(tài)行始終包含的是狀態(tài)碼和相應(yīng)的簡(jiǎn)短消息,以避免混亂。最常用的狀態(tài)碼有:
◆200 (OK): 找到了該資源,并且一切正常。
◆304 (NOT MODIFIED): 該資源在上次請(qǐng)求之后沒(méi)有任何修改。這通常用于瀏覽器的緩存機(jī)制。
◆401 (UNAUTHORIZED): 客戶端無(wú)權(quán)訪問(wèn)該資源。這通常會(huì)使得瀏覽器要求用戶輸入用戶名和密碼,以登錄到服務(wù)器。
◆403 (FORBIDDEN): 客戶端未能獲得授權(quán)。這通常是在401之后輸入了不正確的用戶名或密碼。
◆404 (NOT FOUND): 在指定的位置不存在所申請(qǐng)的資源。
◆500:服務(wù)器異常。
到此這篇關(guān)于HTTP協(xié)議常用的請(qǐng)求頭和響應(yīng)頭響應(yīng)詳解說(shuō)明(學(xué)習(xí))的文章就介紹到這了,更多相關(guān)HTTP請(qǐng)求頭和響應(yīng)頭內(nèi)容請(qǐng)搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
