HTTP請求方法及響應(yīng)碼詳解(http get post head)_第1頁
HTTP請求方法及響應(yīng)碼詳解(http get post head)_第2頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

4/4HTTP請求方法及響應(yīng)碼詳解(httpgetposthead)HTTP是Web協(xié)議集中的重要協(xié)議,它是從客戶機/服務(wù)器模型發(fā)展起來的??蛻魴C/服務(wù)器是運行一對

相互通信的程序,客戶與服務(wù)器連接時,首先,向服務(wù)器提出請求,服務(wù)器根據(jù)客戶的請求,完成處理

并給出響應(yīng)。瀏覽器就是與Web服務(wù)器產(chǎn)生連接的客戶端程序,它的端口為TCP的80端口,。瀏覽器

與Web服務(wù)器之間所遵循的協(xié)議就是HTTP。

HTTP的早期版本為HTTP/0.9,它適用于各種數(shù)據(jù)信息的簡潔快速協(xié)議,但是其遠(yuǎn)不能滿足日益發(fā)展各

種應(yīng)用的需要。但HTTP/0.9作為HTTP協(xié)議具有典型的無狀態(tài)性:每個事務(wù)都是獨立進行處理的,當(dāng)

一個事務(wù)開始就在客戶與服務(wù)器之間建立一個連接,當(dāng)事務(wù)結(jié)束時就釋放這個連接。HTTP/0.9包含Simple-Request&Simple-Responsed的報文結(jié)構(gòu)。但是客戶無法使用內(nèi)容協(xié)商,所以服務(wù)器也無法

返回實體的媒體類型。

1982年,TimBerners-Lee提出了HTTP/1.0,在此后的不斷豐富和發(fā)展中,HTTP/1.0成為最重要

的面向事務(wù)的應(yīng)用層協(xié)議。該協(xié)議對每一次請求/響應(yīng),建立并拆除一次連接。其特點是簡單、易于管理,所以它符合了大家的需要,得到了廣泛的應(yīng)用。其缺點是仍會發(fā)生下列問題:對用戶請求響應(yīng)慢、網(wǎng)絡(luò)擁

塞嚴(yán)重、安全性等。

1997年形成的HTTP/1.1,也就是現(xiàn)在普遍使用的協(xié)議,在持續(xù)連接操作機制中實現(xiàn)流水方式,即客戶

端需要對同一服務(wù)器發(fā)出多個請求時,其實現(xiàn)在多數(shù)的網(wǎng)頁都是有多部分組成(比如多張圖片),可用

流水線方式加快速度,流水機制就是指連續(xù)發(fā)出多個請求并等到這些請求發(fā)送完畢,再等待響應(yīng)。這樣

就大大節(jié)省了單獨請求對響應(yīng)的等待時間,使我們得到更快速的瀏覽。

另外,HTTP/1.1服務(wù)器端處理請求時按照收到的順序進行,這就保證了傳輸?shù)恼_性。當(dāng)然,服務(wù)器端

在發(fā)生連接中斷時,會自動的重傳請求,保證數(shù)據(jù)的完整性。

HTTP/1.1還提供了身份認(rèn)證、狀態(tài)管理和Cache緩存等機制。這里,我想特別提一下關(guān)于HTTP/1.1

中的Cache緩存機制對HTTP/1.0的不足之處的改進,它嚴(yán)格全面,既可以減少時間延遲、又節(jié)省了帶寬。HTTP/1.1采用了內(nèi)容協(xié)商機制,選擇最合適的用戶的內(nèi)容表現(xiàn)形式。

現(xiàn)在,很多地方都有用到的虛擬主機技術(shù)在HTTP/1.1中也可以實現(xiàn)。所謂的虛擬主機技術(shù),就是同一

主機地址實際對應(yīng)多臺主機。通俗的講,當(dāng)你同時在一個網(wǎng)站申請兩個主頁時,用協(xié)議分析儀可以發(fā)現(xiàn)

其實這兩個主頁對應(yīng)的是同一個IP地址。這樣用多臺完全相同的機器形成服務(wù)器就可以提高處

理的吞吐量。

傳統(tǒng)的解決方案是改造域名服務(wù)器使其可以根據(jù)一定的算法將同一域名解釋成不同的IP地址。分別對應(yīng)

虛擬主機的每臺機器,其缺點是要求每臺機器占用完全獨立的IP地址,這與IP地址的缺乏是相矛盾的。HTTP/1.1提供的解決方案在HTTP協(xié)議自身中加入了指定不同主機的功能,從而多臺主機可以共享一個IP地址,既提高了性能又便于管理。

因為HTTP/1.1是Internet現(xiàn)行的標(biāo)準(zhǔn)協(xié)議,這里詳細(xì)介紹其相關(guān)語法。

首先,HTTP/1.1格式可寫為:

其中請求方法是請求一定的Web頁面的程序或用于特定的URL。可選用下列幾種:

GET:請求指定的頁面信息,并返回實體主體。

HEAD:只請求頁面的首部。

POST:請求服務(wù)器接受所指定的文檔作為對所標(biāo)識的URI的新的從屬實體。

PUT:從客戶端向服務(wù)器傳送的數(shù)據(jù)取代指定的文檔的內(nèi)容。

DELETE:請求服務(wù)器刪除指定的頁面。

OPTIONS:允許客戶端查看服務(wù)器的性能。

TRACE:請求服務(wù)器在響應(yīng)中的實體主體部分返回所得到的內(nèi)容。

PATCH:實體中包含一個表,表中說明與該URI所表示的原內(nèi)容的區(qū)別。

MOVE:請求服務(wù)器將指定的頁面移至另一個網(wǎng)絡(luò)地址。

COPY:請求服務(wù)器將指定的頁面拷貝至另一個網(wǎng)絡(luò)地址。

LINK:請求服務(wù)器建立鏈接關(guān)系。

UNLINK:斷開鏈接關(guān)系。

WRAPPED:允許客戶端發(fā)送經(jīng)過封裝的請求。

Extension-mothed:在不改動協(xié)議的前提下,可增加另外的方法。

比如:

GET/index.htmlHTTP/1.1

Accept:text/plain/*純ASCII碼文本文件*/

Accept:text/html/*HTML文本文件*/

User-Agent:Mozilla/4.5(WinNT)

說明瀏覽器使用Get方法請求文檔/index.html。瀏覽器則只允許接收純ASCII碼文本文件和HTML文本文件,其使用的引擎是Mozilla/4.5(Netscape)。

當(dāng)服務(wù)器響應(yīng)時,其狀態(tài)行的信息為HTTP的版本號,狀態(tài)碼,及解釋狀態(tài)碼的簡單說明。現(xiàn)將5類狀態(tài)碼詳細(xì)列出:

①客戶方錯誤

100繼續(xù)

101交換協(xié)議

②成功

200OK

201已創(chuàng)建

202接收

203非認(rèn)證信息

204無內(nèi)容

205重置內(nèi)容

206部分內(nèi)容

③重定向

300多路選擇

301永久轉(zhuǎn)移

302暫時轉(zhuǎn)移

303參見其它

304未修改(NotModified)

305使用代理

④客戶方錯誤

400錯誤請求(BadRequest)

401未認(rèn)證

402需要付費

403禁止(Forbidden)

404未找到(NotFound)

405方法不允許

406不接受

407需要代理認(rèn)證

408請求超時

409沖突

410失敗

411需要長度

412條件失敗

413請求實體太大

414請求URI太長

415不支持媒體類型

⑤服務(wù)器錯誤

500服務(wù)器內(nèi)部錯誤

501未實現(xiàn)(NotImplemented)

502網(wǎng)關(guān)失敗

504網(wǎng)關(guān)超時

505HTTP版本不支持

比如:(在《TELNET……》一文中用telnet登陸80端口,相同的方法用在HTTP/1.1中,會發(fā)現(xiàn)沒有顯示,下面補充說明之)

telnethttp://./doc/1a1402d5767f5acfa1c7cd98.html80

HEAD/HTTP/1.1

host:http://./doc/1a1402d5767f5acfa1c7cd98.html/*本行為輸入內(nèi)容*/

HTTP/1.1501MethodNotImplemented

Date:Web,01Nov200007:12:29GMT/*當(dāng)前的日期/時間*/

Server:Apache/1.3.12(Unix)/*Web服務(wù)器信息*/

Allow:GET,HEAD,OPTION,TRACE/*支持的方法類型*/

Connection:close

Connect-Type:Text/html;charset=iso-8859-1/*連接的媒體類型*/

501Method

NotImplemented

MethodNotImplemented

headto/inde

x.htmlnotsupported.

Invalidmethodinrequesthead/htp/1.1

Apache/1.3.12Serverathttp://./doc/1a1402d5767f5acfa1c7cd98.htmlPort80

關(guān)于實體頭部的內(nèi)容還可以有:

LastModified:請求文檔的最近修改時間。

Expires:請求文檔的過期時間。

Connect-length:文檔數(shù)據(jù)的長度。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論