1贸营、HTTP請求方式
GET
向Web服務(wù)器請求一個文件
POST
向Web服務(wù)器發(fā)送數(shù)據(jù)讓W(xué)eb服務(wù)器進(jìn)行處理
PUT
向Web服務(wù)器發(fā)送數(shù)據(jù)并存儲在Web服務(wù)器內(nèi)部
HEAD
檢查一個對象是否存在
DELETE
從Web服務(wù)器上刪除一個文件
CONNECT
對通道提供支持
TRACE
跟蹤到服務(wù)器的路徑
OPTIONS
查詢Web服務(wù)器的性能
說明:
主要使用到“GET”和“POST”。
實例:
POST /test/tupian/cm HTTP/1.1
分成三部分:
(1)POST:HTTP請求方式
(2)/test/tupian/cm:請求Web服務(wù)器的目錄地址(或者指令)
(3)HTTP/1.1: URI(Uniform Resource Identifier候学,統(tǒng)一資源標(biāo)識符)及其版本
備注:
在Ajax中,對應(yīng)method屬性設(shè)置纵散。
2梳码、Host
說明:
請求的web服務(wù)器域名地址
3、User-Agent
說明:
HTTP客戶端運(yùn)行的瀏覽器類型的詳細(xì)信息伍掀。通過該頭部信息掰茶,web服務(wù)器可以判斷到當(dāng)前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
說明:
指定客戶端能夠接收的內(nèi)容類型濒蒋,內(nèi)容類型中的先后次序表示客戶端接收的先后次序。
例如:
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默認(rèn)設(shè)置為“text/javascript, text/html, application/xml, text/xml, */*”沪伙。這是因為Ajax默認(rèn)獲取服務(wù)器返回的Json數(shù)據(jù)模式。
在Ajax代碼中县好,可以使用XMLHttpRequest 對象中setRequestHeader函數(shù)方法來動態(tài)設(shè)置這些Header信息焰坪。
5、Accept-Language
說明:
指定HTTP客戶端瀏覽器用來展示返回信息所優(yōu)先選擇的語言聘惦。
實例:
Accept-Language: zh-cn,zh;q=0.5
這里默認(rèn)為中文某饰。
6、Accept-Encoding
說明:
指定客戶端瀏覽器可以支持的web服務(wù)器返回內(nèi)容壓縮編碼類型善绎。表示允許服務(wù)器在將輸出內(nèi)容發(fā)送到客戶端以前進(jìn)行壓縮黔漂,以節(jié)約帶寬。而這里設(shè)置的就是客戶端瀏覽器所能夠支持的返回壓縮格式禀酱。
實例:
Accept-Encoding: gzip,deflate
備注:
其實在百度很多產(chǎn)品線中炬守,apache在給客戶端返回頁面數(shù)據(jù)之前,將數(shù)據(jù)以gzip格式進(jìn)行壓縮剂跟。
7减途、Accept-Charset
說明:
瀏覽器可以接受的字符編碼集。
實例:
Accept-Charset: gb2312,utf-8;q=0.7,*;q=0.7
8曹洽、Content-Type
說明:
顯示此HTTP請求提交的內(nèi)容類型鳍置。一般只有post提交時才需要設(shè)置該屬性。
實例:
Content-type: application/x-www-form-urlencoded;charset:UTF-8
有關(guān)Content-Type屬性值可以如下兩種編碼類型:
(1)“application/x-www-form-urlencoded”: 表單數(shù)據(jù)向服務(wù)器提交時所采用的編碼類型送淆,默認(rèn)的缺省值就是“application/x-www-form-urlencoded”税产。 然而,在向服務(wù)器發(fā)送大量的文本、包含非ASCII字符的文本或二進(jìn)制數(shù)據(jù)時這種編碼方式效率很低辟拷。
(2)“multipart/form-data”: 在文件上載時撞羽,所使用的編碼類型應(yīng)當(dāng)是“multipart/form-data”,它既可以發(fā)送文本數(shù)據(jù)衫冻,也支持二進(jìn)制數(shù)據(jù)上載诀紊。
當(dāng)提交為單單數(shù)據(jù)時,可以使用“application/x-www-form-urlencoded”隅俘;當(dāng)提交的是文件時渡紫,就需要使用“multipart/form-data”編碼類型。
在Content-Type屬性當(dāng)中還是指定提交內(nèi)容的charset字符編碼考赛。一般不進(jìn)行設(shè)置,它只是告訴web服務(wù)器post提交的數(shù)據(jù)采用的何種字符編碼莉测。
一般在開發(fā)過程颜骤,是由前端工程與后端UI工程師商量好使用什么字符編碼格式來post提交的,然后后端ui工程師按照固定的字符編碼來解析提交的數(shù)據(jù)捣卤。所以這里設(shè)置的charset沒有多大作用忍抽。
9、Connection
說明:
表示是否需要持久連接董朝。如果web服務(wù)器端看到這里的值為“Keep-Alive”鸠项,或者看到請求使用的是HTTP 1.1(HTTP 1.1默認(rèn)進(jìn)行持久連接),它就可以利用持久連接的優(yōu)點子姜,當(dāng)頁面包含多個元素時(例如Applet祟绊,圖片),顯著地減少下載所需要的時間哥捕。要實現(xiàn)這一點牧抽, web服務(wù)器需要在返回給客戶端HTTP頭信息中發(fā)送一個Content-Length(返回信息正文的長度)頭,最簡單的實現(xiàn)方法是:先把內(nèi)容寫入ByteArrayOutputStream遥赚,然 后在正式寫出內(nèi)容之前計算它的大小扬舒。
實例:
Connection: keep-alive
10、Keep-Alive
說明:
顯示此HTTP連接的Keep-Alive時間凫佛。使客戶端到服務(wù)器端的連接持續(xù)有效讲坎,當(dāng)出現(xiàn)對服務(wù)器的后繼請求時,Keep-Alive功能避免了建立或者重新建立連接愧薛。
以前HTTP請求是一站式連接晨炕,從HTTP/1.1協(xié)議之后,就有了長連接毫炉,即在規(guī)定的Keep-Alive時間內(nèi)府瞄,連接是不會斷開的。
實例:Keep-Alive: 300
11、cookie
說明:
HTTP請求發(fā)送時遵馆,會把保存在該請求域名下的所有cookie值一起發(fā)送給web服務(wù)器鲸郊。
12、Referer
說明:
包含一個URL货邓,用戶從該URL代表的頁面出發(fā)訪問當(dāng)前請求的頁面
Responses 部分
Header解釋示例
Accept-Ranges表明服務(wù)器是否支持指定范圍請求及哪種類型的分段請求Accept-Ranges: bytes
Age從原始服務(wù)器到代理緩存形成的估算時間(以秒計秆撮,非負(fù))Age: 12
Allow對某網(wǎng)絡(luò)資源的有效的請求行為,不允許則返回405Allow: GET, HEAD
Cache-Control告訴所有的緩存機(jī)制是否可以緩存及哪種類型Cache-Control: no-cache
Content-Encodingweb服務(wù)器支持的返回內(nèi)容壓縮編碼類型换况。Content-Encoding: gzip
Content-Language響應(yīng)體的語言Content-Language: en,zh
Content-Length響應(yīng)體的長度Content-Length: 348
Content-Location請求資源可替代的備用的另一地址Content-Location: /index.htm
Content-MD5返回資源的MD5校驗值Content-MD5: Q2hlY2sgSW50ZWdyaXR5IQ==
Content-Range在整個返回體中本部分的字節(jié)位置Content-Range: bytes 21010-47021/47022
Content-Type返回內(nèi)容的MIME類型Content-Type: text/html; charset=utf-8
Date原始服務(wù)器消息發(fā)出的時間Date: Tue, 15 Nov 2010 08:12:31 GMT
ETag請求變量的實體標(biāo)簽的當(dāng)前值ETag: “737060cd8c284d8af7ad3082f209582d”
Expires響應(yīng)過期的日期和時間Expires: Thu, 01 Dec 2010 16:00:00 GMT
Last-Modified請求資源的最后修改時間Last-Modified: Tue, 15 Nov 2010 12:45:26 GMT
Location用來重定向接收方到非請求URL的位置來完成請求或標(biāo)識新的資源Location: http://www.zcmhi.com/archives/94.html
Pragma包括實現(xiàn)特定的指令职辨,它可應(yīng)用到響應(yīng)鏈上的任何接收方Pragma: no-cache
Proxy-Authenticate它指出認(rèn)證方案和可應(yīng)用到代理的該URL上的參數(shù)Proxy-Authenticate: Basic
refresh應(yīng)用于重定向或一個新的資源被創(chuàng)造,在5秒之后重定向(由網(wǎng)景提出戈二,被大部分瀏覽器支持)Refresh: 5; url=
http://www.zcmhi.com/archives/94.html
Retry-After如果實體暫時不可取舒裤,通知客戶端在指定時間之后再次嘗試Retry-After: 120
Serverweb服務(wù)器軟件名稱Server: Apache/1.3.27 (Unix) (Red-Hat/Linux)
Set-Cookie設(shè)置Http CookieSet-Cookie: UserID=JohnDoe; Max-Age=3600; Version=1
Trailer指出頭域在分塊傳輸編碼的尾部存在Trailer: Max-Forwards
Transfer-Encoding文件傳輸編碼Transfer-Encoding:chunked
Vary告訴下游代理是使用緩存響應(yīng)還是從原始服務(wù)器請求Vary: *
Via告知代理客戶端響應(yīng)是通過哪里發(fā)送的Via: 1.0 fred, 1.1 nowhere.com (Apache/1.1)
Warning警告實體可能存在的問題Warning: 199 Miscellaneous warning
WWW-Authenticate表明客戶端請求實體應(yīng)該使用的授權(quán)方案WWW-Authenticate: Basic
歡迎關(guān)注我的公眾號(同步更新文章):DoNet技術(shù)分享平臺