HTTP Request的Header信息
1、HTTP請求方式
如下表:
說明:
主要使用到“GET”和“POST”。
實例:
POST /test/tupian/cm HTTP/1.1
分成三部分:
(1)POST:HTTP請求方式
(2)/test/tupian/cm:請求Web服務器的目錄地址(或者指令)
(3)HTTP/1.1: URI(Uniform Resource Identifier,統一資源標識符)及其版本
備注:
在Ajax中,對應method屬性設置。
2、Host
說明:
請求的web服務器域名地址
3、User-Agent
說明:
HTTP客戶端運行的瀏覽器類型的詳細信息。通過該頭部信息,web服務器可以判斷到當前HTTP請求的客戶端瀏覽器類別。
實例:
User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11
4、Accept
說明:
指定客戶端能夠接收的內容類型,內容類型中的先后次序表示客戶端接收的先后次序。
例如:
Accept:text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png, */* 常用;q=0.5
備注:
在Prototyp(1.5)的Ajax代碼封裝中,將Accept默認設置為“text/javascript, text/html, application/xml, text/xml, */*”。這是因為Ajax默認獲取服務器返回的Json數據模式。
在Ajax代碼中,可以使用XMLHttpRequest 對象中setRequestHeader函數方法來動態設置這些Header信息。
5、Accept-Language
說明:
指定HTTP客戶端瀏覽器用來展示返回信息所優先選擇的語言。
實例:
Accept-Language: zh-cn,zh;q=0.5
這里默認為中文。
6、Accept-Encoding
說明:
指定客戶端瀏覽器可以支持的web服務器返回內容壓縮編碼類型。表示允許服務器在將輸出內容發送到客戶端以前進行壓縮,以節約帶寬。而這里設置的就是客戶端瀏覽器所能夠支持的返回壓縮格式。
實例:
Accept-Encoding: gzip,deflate
備注:
其實在百度很多產品線中,apache在給客戶端返回頁面數據之前,將數據以gzip格式進行壓縮。
7、Accept-Charset
說明:
瀏覽器可以接受的字符編碼集。
實例:
Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
8、Content-Type
說明:
顯示此HTTP請求提交的內容類型。一般只有post提交時才需要設置該屬性。(get也可以)
實例:
Content-type: application/x-www-form-urlencoded;charset:UTF-8
有關Content-Type屬性值可以如下兩種編碼類型:
(1)“application/x-www-form-urlencoded”: 表單數據向服務器提交時所采用的編碼類型,默認的缺省值就是“application/x-www-form-urlencoded”。 然而,在向服務器發送大量的文本、包含非ASCII字符的文本或二進制數據時這種編碼方式效率很低。
(2)“multipart/form-data”: 在文件上載時,所使用的編碼類型應當是“multipart/form-data”,它既可以發送文本數據,也支持二進制數據上載。
當提交為單單數據時,可以使用“application/x-www-form-urlencoded”;當提交的是文件時,就需要使用“multipart/form-data”編碼類型。
在Content-Type屬性當中還是指定提交內容的charset字符編碼。一般不進行設置,它只是告訴web服務器post提交的數據采用的何種字符編碼。
一般在開發過程,是由前端工程與后端UI工程師商量好使用什么字符編碼格式來post提交的,然后后端ui工程師按照固定的字符編碼來解析提交的數據。所以這里設置的charset沒有多大作用。
9、Connection
說明:
表示是否需要持久連接。如果web服務器端看到這里的值為“Keep-Alive”,或者看到請求使用的是HTTP 1.1(HTTP 1.1默認進行持久連接),它就可以利用持久連接的優點,當頁面包含多個元素時(例如Applet,圖片),顯著地減少下載所需要的時間。要實現這一點, web服務器需要在返回給客戶端HTTP頭信息中發送一個Content-Length(返回信息正文的長度)頭,最簡單的實現方法是:先把內容寫入ByteArrayOutputStream,然 后在正式寫出內容之前計算它的大小。
實例:
Connection: keep-alive
10、Keep-Alive
說明:
顯示此HTTP連接的Keep-Alive時間。使客戶端到服務器端的連接持續有效,當出現對服務器的后繼請求時,Keep-Alive功能避免了建立或者重新建立連接。
以前HTTP請求是一站式連接,從HTTP/1.1協議之后,就有了長連接,即在規定的Keep-Alive時間內,連接是不會斷開的。
實例:
Keep-Alive: 300
11、cookie
說明:
HTTP請求發送時,會把保存在該請求域名下的所有cookie值一起發送給web服務器。
12、Referer
說明:
包含一個URL,用戶從該URL代表的頁面出發訪問當前請求的頁面
Responses 部分
參考原創博主連接:https://blog.csdn.net/YoungJ_Zhou/article/details/82765782