售前電話
135-3656-7657
售前電話 : 135-3656-7657
HTTP是WWW標(biāo)準(zhǔn)傳送協(xié)議。一般采用TCP作為其下層的運(yùn)輸層協(xié)議,公認(rèn)端口號(hào)為80。但是標(biāo)準(zhǔn)也沒(méi)有強(qiáng)制要求使用TCP。如果ATM網(wǎng)絡(luò)足夠可靠的話,也可用AA1、5適配后直接在ATM網(wǎng)絡(luò)中傳送。
HTTP協(xié)議過(guò)程十分簡(jiǎn)單,只包含一次請(qǐng)求和一次響應(yīng),如圖2.44所示。服務(wù)器進(jìn)程啟動(dòng)后就在80號(hào)端口守聽(tīng)。客戶點(diǎn)擊超級(jí)鏈接或者鍵入U(xiǎn)RL后,就發(fā)起至服務(wù)器HTTP端口的TCP連接建立。然后客戶向服務(wù)器發(fā)送ASCII形式的請(qǐng)求數(shù)據(jù)行,請(qǐng)求執(zhí)行某項(xiàng)操作。服務(wù)器執(zhí)行操作后送回響應(yīng),響應(yīng)是類似多用途Internet郵件擴(kuò)充(MIME一-MultipurposeInternetMailExlensions)格式,可以傳送圖像、聲音、視像等非ASCII數(shù)據(jù)。客戶收到響應(yīng)后就斷開(kāi)連接。其好處是占用主機(jī)資源可以減小到最低程度,有利于許多客戶同時(shí)訪問(wèn)服務(wù)器。
需要注意的是,如果取回的頁(yè)面中有圖像(圖標(biāo)、照片、畫(huà)面等),則對(duì)于每個(gè)圖像,客戶程序都要執(zhí)行建立連接、通信和釋放連接過(guò)程,雖然效率較低,但是協(xié)議實(shí)現(xiàn)簡(jiǎn)單。
HTTP還是一個(gè)無(wú)狀態(tài)的協(xié)議。它不記憶事務(wù)處理歷史,如果后續(xù)處理需要用到以前的信息,必須由請(qǐng)求報(bào)文告之,因此每次連接要傳送較多的信息。其優(yōu)點(diǎn)是運(yùn)行速度快,服務(wù)器響應(yīng)快。
HTTP協(xié)議包括兩類元素:客戶機(jī)至服務(wù)器的請(qǐng)求和服務(wù)器至客戶的響應(yīng)。
響應(yīng)由狀態(tài)行和信息組成。狀態(tài)行指示操作執(zhí)行情況,用編碼表不?如200表示OK,另外定義了許多出錯(cuò)碼,如400為請(qǐng)求錯(cuò)誤等(信息即全部或部分的Web頁(yè)面。
請(qǐng)求一般也由多行組成。第一行為方法、URL和協(xié)議版本號(hào),其中URL僅為路徑名。后續(xù)行進(jìn)一步告訴服務(wù)牉如何解釋本次請(qǐng)求。
HTTP雖然是為Web而設(shè)計(jì)的,但是它力求一般化,期望能用于未來(lái)的面向?qū)ο髴?yīng)用。正因?yàn)槿绱耍谝恍械牡谝粋€(gè)詞就是請(qǐng)求對(duì)
Web頁(yè)面執(zhí)行的方法,即命令。推廣到面向?qū)ο髴?yīng)用,也就是對(duì)一般對(duì)象執(zhí)行的方法。HTTP規(guī)定的方法有7種,如表2.5所示。如果要訪問(wèn)-般的對(duì)象,還可定義其它方法。方法名必須大寫。
各方法的簡(jiǎn)要操作為:
(1)GET:請(qǐng)求服務(wù)器發(fā)送頁(yè)面。該方法可后加If-Modified-Since頭部,并寫明日期。指示服務(wù)器,如果該頁(yè)面在該日期后已有修改則發(fā)送,否則就尤需發(fā)送,這時(shí)瀏覽器將顯示原來(lái)緩存的頁(yè)面。
(2)HEAD:僅請(qǐng)求發(fā)送消息的頭部,不需要整個(gè)頁(yè)面。其用途是獲得頁(yè)面最后一次修改的日期。采集索引信息或測(cè)試URL的合法性。
(3)PUT:是GET的逆操作,即寫貞面。它用"f在遠(yuǎn)程服務(wù)器中建立一組貞面。請(qǐng)求體包含頁(yè)面,并可含鑒權(quán)頭部,以表明請(qǐng)求者有權(quán)執(zhí)行該操作。
(4)P0ST:和PUT類似,但不是用所附信息覆蓋寫入指定資源,而是將信息加在該資源中。其目的是讓W(xué)eb能取代USENET新聞系統(tǒng)的功能,將消息添加至新聞組中。
(5)DEIEfE:刪除某頁(yè)面。必須鑒權(quán)。
(6)LlNK和UNUNK:用于在已有頁(yè)面之間或其它資源之間建立連接。