超文本傳輸協(xié)議(HTTP)是一種用于分布式,協(xié)作式超媒體信息系統(tǒng)的應(yīng)用程序?qū)訁f(xié)議。HTTP是萬(wàn)維網(wǎng)(World Wide Web)數(shù)據(jù)通信的基礎(chǔ),超文本文檔包括指向用戶(hù)可以輕松訪(fǎng)問(wèn)的其他資源的超鏈接,例如,通過(guò)單擊鼠標(biāo)或通過(guò)在Web瀏覽器中點(diǎn)擊屏幕。
技術(shù)概述
HTTP作為客戶(hù)端-服務(wù)器計(jì)算模型中的請(qǐng)求-應(yīng)答協(xié)議。例如,一個(gè)網(wǎng)頁(yè)瀏覽器可能是客戶(hù)端,一個(gè)在計(jì)算機(jī)上運(yùn)行,托管在網(wǎng)站上的應(yīng)用程序可能是服務(wù)器。客戶(hù)端向服務(wù)器提交HTTP請(qǐng)求消息。服務(wù)器提供資源(例如HTML文件和其他內(nèi)容)或代表客戶(hù)端執(zhí)行其他功能,將應(yīng)答消息返回到客戶(hù)端。應(yīng)答包含有關(guān)請(qǐng)求的完成狀態(tài)信息,并且還可能在其消息正文中包含請(qǐng)求的內(nèi)容。
Web瀏覽器是用戶(hù)代理(UA)的示例。其他類(lèi)型的用戶(hù)代理包括由搜索服務(wù)提供商使用的索引軟件(網(wǎng)絡(luò)爬蟲(chóng)),語(yǔ)音瀏覽器,移動(dòng)應(yīng)用,以及其他軟件訪(fǎng)問(wèn)、消耗或顯示網(wǎng)頁(yè)內(nèi)容。
HTTP旨在允許中間網(wǎng)絡(luò)元素改善或啟用客戶(hù)端與服務(wù)器之間的通信。高流量的網(wǎng)站通常會(huì)受益于Web緩存服務(wù)器,該服務(wù)器代表上游服務(wù)器交付內(nèi)容以縮短應(yīng)答時(shí)間。Web瀏覽器緩存以前訪(fǎng)問(wèn)的Web資源,并在可能的情況下重用它們以減少網(wǎng)絡(luò)流量。通過(guò)與外部服務(wù)器中繼消息,專(zhuān)用網(wǎng)絡(luò)邊界處的HTTP代理服務(wù)器可以促進(jìn)與沒(méi)有全局可路由地址的客戶(hù)端之間的通信。
HTTP是在Internet協(xié)議套件的框架內(nèi)設(shè)計(jì)的應(yīng)用程序?qū)訁f(xié)議。常用的是底層和可靠傳輸層協(xié)議以及傳輸控制協(xié)議(TCP)。但是,HTTP可以修改為使用不可靠的協(xié)議,例如HTTPU和簡(jiǎn)單服務(wù)發(fā)現(xiàn)協(xié)議(SSDP)中的用戶(hù)數(shù)據(jù)報(bào)協(xié)議(UDP )。
使用統(tǒng)一資源標(biāo)識(shí)符(URI)方案http和https,通過(guò)統(tǒng)一資源定位符(URL)標(biāo)識(shí)HTTP資源并將其放置在網(wǎng)絡(luò)上。如RFC 3986中所定義的那樣,URI被編碼為HTML文檔中的超鏈接,以形成相互鏈接的超文本文檔。
HTTP / 1.1是原始HTTP(HTTP / 1.0)的修訂版。在HTTP / 1.0中,為每個(gè)到同一服務(wù)器的資源請(qǐng)求都建立了單獨(dú)連接。HTTP / 1.1可連接多次重復(fù)使用,在頁(yè)面已交付之后下載圖片、腳本、樣式表等等。因而隨著TCP連接的建立,HTTP/1.1通信的延遲更少,但同時(shí)也帶來(lái)了相當(dāng)大的開(kāi)銷(xiāo)。
HTTP會(huì)話(huà)
HTTP會(huì)話(huà)是一系列網(wǎng)絡(luò)請(qǐng)求-應(yīng)答事務(wù)。HTTP客戶(hù)端通過(guò)建立到服務(wù)器上特定端口的傳輸控制協(xié)議(TCP)連接(通常是端口80,偶爾是端口8080)來(lái)發(fā)起請(qǐng)求。偵聽(tīng)該端口的HTTP服務(wù)器正在等待客戶(hù)端的請(qǐng)求消息。收到請(qǐng)求后,服務(wù)器將發(fā)回狀態(tài)行(例如“ HTTP / 1.1 200 OK”)和其自身的消息。雖然也可能會(huì)返回錯(cuò)誤消息或其他信息,該消息的主體主要是請(qǐng)求的資源。
HTTP會(huì)話(huà)狀態(tài):HTTP是一種無(wú)狀態(tài)協(xié)議。無(wú)狀態(tài)協(xié)議不需要HTTP服務(wù)器在多個(gè)請(qǐng)求的持續(xù)時(shí)間內(nèi)保留有關(guān)每個(gè)用戶(hù)的信息或狀態(tài)。但是,某些Web應(yīng)用程序使用HTTP cookie或Web表單內(nèi)的隱藏變量來(lái)實(shí)現(xiàn)狀態(tài)或服務(wù)器端會(huì)話(huà)。
HTTP認(rèn)證
HTTP提供了多種身份驗(yàn)證方案,例如基本訪(fǎng)問(wèn)身份驗(yàn)證和摘要訪(fǎng)問(wèn)身份驗(yàn)證,它們通過(guò)挑戰(zhàn)-應(yīng)答機(jī)制進(jìn)行操作。借此方式,服務(wù)器在提供請(qǐng)求的內(nèi)容之前識(shí)別訪(fǎng)問(wèn)隊(duì)象并對(duì)其提出質(zhì)疑和詢(xún)問(wèn)。
HTTP通過(guò)一組可擴(kuò)展的挑戰(zhàn)-應(yīng)答認(rèn)證方案,提供了用于訪(fǎng)問(wèn)控制和認(rèn)證的通用框架,服務(wù)器可以使用挑戰(zhàn)-應(yīng)答認(rèn)證方案來(lái)質(zhì)疑和詢(xún)問(wèn)客戶(hù)端請(qǐng)求,客戶(hù)端可以使用它來(lái)提供認(rèn)證信息。
身份驗(yàn)證領(lǐng)域
HTTP身份驗(yàn)證規(guī)范還提供了一個(gè)任意的、特定于實(shí)現(xiàn)的構(gòu)造,用于進(jìn)一步將公用的資源劃分給定根URI。如果存在,則將領(lǐng)域值字符串與規(guī)范的根URI結(jié)合以形成質(zhì)疑和詢(xún)問(wèn)的保護(hù)空間組件。實(shí)際上,這允許服務(wù)器在一個(gè)根URI下定義單獨(dú)的身份驗(yàn)證范圍。
關(guān)于EDI更多問(wèn)題探討,歡迎私信或評(píng)論。
注:文案部分內(nèi)容來(lái)源于網(wǎng)絡(luò),版權(quán)歸原創(chuàng)作者所有,如有侵犯到您的權(quán)益,請(qǐng)您聯(lián)系我們進(jìn)行刪除,給您帶來(lái)困擾,我們深感抱歉。
審核編輯:符乾江
-
服務(wù)器
+關(guān)注
關(guān)注
12文章
9160瀏覽量
85428 -
HTTP
+關(guān)注
關(guān)注
0文章
505瀏覽量
31232
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論