Web服務與應用開發(fā) PPT 4、4-1HTTP(webService學習快速入門)_第1頁
Web服務與應用開發(fā) PPT 4、4-1HTTP(webService學習快速入門)_第2頁
Web服務與應用開發(fā) PPT 4、4-1HTTP(webService學習快速入門)_第3頁
Web服務與應用開發(fā) PPT 4、4-1HTTP(webService學習快速入門)_第4頁
Web服務與應用開發(fā) PPT 4、4-1HTTP(webService學習快速入門)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1

HTTP簡介定義HTTP是什么?HTTP是怎樣工作的HTTP協(xié)議基礎2HTTP:超文本傳輸協(xié)議(HypertextTransferProtocol)

一.定義3二.HTTP是什么?

當我們想瀏覽一個網(wǎng)站的時候,只要在瀏覽器的地址欄里輸入網(wǎng)站的地址就可以了,例如,但是在瀏覽器的地址欄里面出現(xiàn)的卻是:,你知道為什么會多出一個“http”嗎?我們在瀏覽器的地址欄里輸入的網(wǎng)站地址叫做URL(UniformResourceLocator,統(tǒng)一資源定位符)。就像每家每戶都有一個門牌地址一樣,每個網(wǎng)頁也都有一個Internet地址。當你在瀏覽器的地址框中輸入一個URL或是單擊一個超級鏈接時,URL就確定了要瀏覽的地址。瀏覽器通過超文本傳輸協(xié)議(HTTP),將Web服務器上站點的網(wǎng)頁代碼提取出來,并翻譯成漂亮的網(wǎng)頁。因此,在我們認識HTTP之前,有必要先弄清楚URL的組成,例如:/china/index.htm。它的含義如下:

1.http://:代表超文本傳輸協(xié)議,通知服務器顯示W(wǎng)eb頁,通常不用輸入;

2.www:代表一個Web(萬維網(wǎng))服務器;

3./:這是裝有網(wǎng)頁的服務器的域名,或站點服務器的名稱;

4.China/:為該服務器上的子目錄,就好像我們的文件夾;

5.Index.htm:index.htm是文件夾中的一個HTML文件(網(wǎng)頁)。4

我們知道,Internet的基本協(xié)議是TCP/IP協(xié)議,然而在TCP/IP模型最上層的是應用層(Applicationlayer),它包含所有高層的協(xié)議。高層協(xié)議有:文件傳輸協(xié)議FTP、電子郵件傳輸協(xié)議SMTP、域名系統(tǒng)服務DNS、網(wǎng)絡新聞傳輸協(xié)議NNTP和HTTP協(xié)議等。HTTP協(xié)議(HyperTextTransferProtocol,超文本傳輸協(xié)議)是用于從WWW服務器傳輸超文本到本地瀏覽器的傳送協(xié)議。它可以使瀏覽器更加高效,使網(wǎng)絡傳輸減少。它不僅保證計算機正確快速地傳輸超文本文檔,還確定傳輸文檔中的哪一部分,以及哪部分內(nèi)容首先顯示(如文本先于圖形)等。這就是你為什么在瀏覽器中看到的網(wǎng)頁地址都是以http://開頭的原因。

當決定使用超文本作為WWW文檔的標準格式后,于是在1990年,科學家們立即制定了能夠快速查找這些超文本文檔的協(xié)議,即HTTP協(xié)議。經(jīng)過幾年的使用與發(fā)展,得到不斷的完善和擴展,目前在WWW中使用的是HTTP/1.0的第六版。5三.HTTP是怎樣工作的

一次HTTP操作稱為一個事務,其工作過程可分為四步:

1.首先客戶機與服務器需要建立連接。只要單擊某個超級鏈接,HTTP

的工作就開始了。

2.建立連接后,客戶機發(fā)送一個請求給服務器,請求方式的格式為:統(tǒng)一資源標識符(URL)、協(xié)議版本號,后邊是MIME信息包括請求修飾符、客戶機信息和可能的內(nèi)容。

3.服務器接到請求后,給予相應的響應信息,其格式為一個狀態(tài)行,包括信息的協(xié)議版本號、一個成功或錯誤的代碼,后邊是MIME信息包括服務器信息、實體信息和可能的內(nèi)容。

4.客戶端接收服務器所返回的信息通過瀏覽器顯示在用戶的顯示屏上,然后客戶機與服務器斷開連接。

如果在以上過程中的某一步出現(xiàn)錯誤,那么產(chǎn)生錯誤的信息將返回到客戶端,由顯示屏輸出。對于用戶來說,這些過程是由HTTP自己完成的,用戶只要用鼠標點擊,等待信息顯示就可以了。6許多HTTP通訊是由一個用戶代理初始化的并且包括一個申請在源服務器上資源的請求。最簡單的情況可能是在用戶代理和服務器之間通過一個單獨的連接來完成。在Internet上,HTTP通訊通常發(fā)生在TCP/IP連接之上。缺省端口是TCP80,但其它的端口也是可用的。但這并不預示著HTTP協(xié)議在Internet或其它網(wǎng)絡的其它協(xié)議之上才能完成。TCP只預示著一個可靠的傳輸。這個過程就好像我們打電話訂貨一樣,我們可以打電話給商家,告訴他我們需要什么規(guī)格的商品,然后商家再告訴我們什么商品有貨,什么商品缺貨。這些,我們是通過電話線用電話聯(lián)系(HTTP是通過TCP/IP),當然我們也可以通過傳真,只要商家那邊也有傳真。7

以上簡要介紹了HTTP協(xié)議的宏觀運作方式,下面介紹一下HTTP協(xié)議的內(nèi)部操作過程。在WWW中,“客戶”與“服務器”是一個相對的概念,只存在于一個特定的連接期間,即在某個連接中的客戶在另一個連接中可能作為服務器?;贖TTP協(xié)議的客戶/服務器模式的信息交換過程,它分四個過程:建立連接、發(fā)送請求信息、發(fā)送響應信息、關(guān)閉連接。其實簡單說就是任何服務器除了包括HTML文件以外,還有一個HTTP駐留程序,用于響應用戶請求。瀏覽器是HTTP客戶,向服務器發(fā)送請求,當瀏覽器中輸入了一個開始文件或點擊了一個超級鏈接時,瀏覽器就向服務器發(fā)送了HTTP請求,此請求被送往由IP地址指定的URL。駐留程序接收到請求,在進行必要的操作后回送所要求的文件。在這一過程中,在網(wǎng)絡上發(fā)送和接收的數(shù)據(jù)已經(jīng)被分成一個或多個數(shù)據(jù)包(packet),每個數(shù)據(jù)包包括:要傳送的數(shù)據(jù);控制信息,即告訴網(wǎng)絡怎樣處理數(shù)據(jù)包。TCP/IP決定了每個數(shù)據(jù)包的格式。如果事先不告訴你,你可能不會知道信息被分成用于傳輸和再重新組合起來的許多小塊。8四.HTTP協(xié)議基礎

HTTP(HyperTextTransferProtocol)是超文本傳輸協(xié)議的縮寫,它用于傳送WWW方式的數(shù)據(jù)。HTTP協(xié)議采用了請求/響應模型。客戶端向服務器發(fā)送一個請求,請求頭包含請求的方法、URL、協(xié)議版本、以及包含請求修飾符、客戶信息和內(nèi)容的類似于MIME的消息結(jié)構(gòu)。服務器以一個狀態(tài)行作為響應,相應的內(nèi)容包括消息協(xié)議的版本,成功或者錯誤編碼加上包含服務器信息、實體元信息以及可能的實體內(nèi)容。9

通常HTTP消息包括客戶機向服務器的請求消息和服務器向客戶機的響應消息。這兩種類型的消息由一個起始行,一個或者多個頭域,一個指示頭域結(jié)束的空行和可選的消息體組成。HTTP的頭域包括通用頭,請求頭,響應頭和實體頭四個部分。每個頭域由一個域名,冒號(:)和域值三部分組成。域名是大小寫無關(guān)的,域值前可以添加任何數(shù)量的空格符,頭域可以被擴展為多行,在每行開始處,使用至少一個空格或制表符。10HTTP請求客戶端通過發(fā)送HTTP請求向服務器請求資源的訪問。HTTP請求由三部分組成,分別是請求行,消息報頭,請求正文。請求行以一個方法符號開頭,后面跟著請求URI和協(xié)議的版本,以CRLF作為結(jié)尾,請求行以空格分隔,除了作為結(jié)尾的CRLF外,不允許出現(xiàn)單獨的CR或者LF字符。格式如下:MethodRequest-URIHTTP-VersionCRLF

Method表示請求的方法,Request-URI是一個統(tǒng)一資源標識符,標識了要請求的資源,HTTP-Version表示請求的HTTP協(xié)議的版本,如:

GET/form.htmlHTTP/1.1(CRLF)11方法作用GET請求獲取由Request-URI所標識的資源POST在Request-URI所標識的資源后附加新的數(shù)據(jù)HEAD

請求Request-URI所標識的資源響應消息報頭PUT請求服務器存儲一個資源,并用Request-URI作為其標識DELETE

請求服務器刪除由Request-URI所標識的資源TRACE

請求服務器回送收到的請求信息,主要用于測試或診斷CONNECT保留將來使用。OPTIONS請求查詢服務器的性能,或者查詢與資源相關(guān)的選項和需求。12HTTP響應

在接受和解釋請求信息后,服務器會返回一個HTTP響應消息。與HTTP請求類似,HTTP響應也是由三個部分組成,分別是:狀態(tài)行,消息報頭,響應正文。狀態(tài)行由協(xié)議版本,數(shù)字形式的狀態(tài)代碼,及相應的狀態(tài)描述組成,各元素之間以空格分隔,除了結(jié)尾的CRLF(回車換行)序列外,不允許出現(xiàn)CR或LF字符。格式如下:

HTTP-VersionStatus-CodeReason-PhraseCRLFHTTP-Version表示服務器HTTP協(xié)議的版本,Status-Code表示服務器發(fā)回的響應代碼,Reason-Phrase表示狀態(tài)代碼的文本描述,CRLF表示回車換行。

如:HTTP/1.1200OK(CRLF)13狀態(tài)代碼由3位數(shù)字組成,表示請求是否被理解或被滿足,狀態(tài)描述了給出狀態(tài)碼的簡短的文本描述。狀態(tài)代碼的第一個數(shù)字定義了響應的類別,后面兩位數(shù)字沒有具體的分類。第一個數(shù)字有五種可能的取值:1XX:指示信息-表示請求已經(jīng)接收,繼續(xù)處理。

2XX:成功-表示請求已經(jīng)被成功接收、理解、接受。

3XX:重定向-要完成請求必須進行更進一步的操作。

4XX:客戶端錯誤-請求有語法錯誤或請求無法實現(xiàn)。

5XX:服務端錯誤-服務器未能實現(xiàn)合法的請求。14HTTP響應-狀態(tài)代碼與狀態(tài)描述狀態(tài)代碼

狀態(tài)描述

說明200

ok

客戶端請求成功。

400

badrequest

由于客戶端請求有語法錯誤,不能被服務器所理解。

401

unauthorized

請求未經(jīng)授權(quán)。這個狀態(tài)代碼必須和www-authenticate報頭域一起使用。

403

forbidden

服務器收到請求,但是拒絕提供服務。服務器通常會在響應中文中給出不提供服務的原因。

404

notfound

請求的資源不存在,例如,輸入了錯誤的URL15HTTP消息

HTTP消息由客戶端到服務器的請求和服務器到客戶端的響應組成。請求消息和響應消息都是由開始行,消息報頭(可選的),空行(只有CRLF的行),消息正文(可選的)組成。對于請求消息,開始行就是請求行,對于響應消息,開始行就是狀態(tài)行。HTTP消息報頭包括普通報頭,請求報頭,響應報頭,實體報頭。

每一個報頭域都是由名字+":"+空格+值組成,消息報頭域的名字是大小寫無關(guān)的。16通用頭域包含請求和響應消息都支持的頭域,通用頭域包含Cache-Control、Connection、Date、Pragma、Transfer-Encoding、Upgrade、Via。Cache-Control指定請求和響應遵循的緩存機制。Date頭域表示消息發(fā)送的時間。Pragma頭域用來包含實現(xiàn)特定的指令,最常用的是Pragma:no-cache。17請求頭域允許客戶端向服務器傳遞關(guān)于請求或者關(guān)于客戶機的附加信息。請求頭域可能包含下列字段Accept、Accept-Charset、Accept-Encoding、Accept-Language、Authorization、From、Host、If-Modified-Since、If-Match、If-None-Match、If-Range、If-Range、If-Unmodified-Since、Max-Forwards、Proxy-Authorization、Range、Referer、User-Agent。Host頭域指定請求資源的Intenet主機和端口號,必須表示請求url的原始服務器或網(wǎng)關(guān)的位置。HTTP/1.1請求必須包含主機頭域,否則系統(tǒng)會以400狀態(tài)碼返回。User-Agent頭域的內(nèi)容包含發(fā)出請求的用戶信息。18響應頭域允許服務器傳遞不能放在狀態(tài)行的附加信息,這些域主要描述服務器的信息和Request-URI進一步的信息。響應頭域包含Age、Location、Proxy-Authenticate、Public、Retry-After、Server、Vary、Warning、WWW-Authenticate。Location響應頭用于重定向接收者到一個新URI地址。Server響應頭包含處理請求的原始服務器的軟件信息。19實體信息一般由實體頭域和實體組成。實體頭域包含關(guān)于實體的原信息,實體頭包括Allow、Content-Base、Content-Encoding、Content-Language、Content-Length、Content-Location、Content-MD5、Content-Range、Conte

溫馨提示

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

評論

0/150

提交評論