商務表達層與靜態網頁_第1頁
商務表達層與靜態網頁_第2頁
商務表達層與靜態網頁_第3頁
商務表達層與靜態網頁_第4頁
商務表達層與靜態網頁_第5頁
已閱讀5頁,還剩55頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第2章商務表達層與

靜態網頁設計技術§2.1商務表達層的功能實現商務表達層客戶端:表現數據特點:界面友好,具有通用性、易用性、靈活性Web服務器:發布信息,與客戶端和應用服務端進行交互Web服務器邏輯表達及動態網頁服務器應用服務器系統集成服務器數據庫Web訪問負載均衡商務表達層的實現方式計算機、便攜設備無線移動設備、信息家電HTML/XML/DHTMLWML/XMLWeb服務器Web服務器應用服務器Web服務器表達層工具支持平臺表達層工具1利用web支持以html為主的表達形式。結構簡單,以web服務器為基礎,不用額外的配置或產品支持,容易實現。不支持符合wml標準的移動設備。商務表達層的實現方式計算機、便攜設備無線移動設備、信息家電HTML/XML/DHTMLWML/XMLWeb服務器Web服務器應用服務器Web服務器表達層工具支持平臺表達層工具2在web基礎上增加表達層工具,擴展web的表達功能。增加支持多種客戶端的軟件、硬件,web服務器支持html和其他數據表達方式——無線應用協議WAP、多媒體郵件類型擴展協議(mime)等,及其他數據表達協議(如fsml(金融服務標記語言)\dom(文檔物件模型)\css(層疊樣式表))。商務表達層的實現方式計算機、便攜設備無線移動設備、信息家電HTML/XML/DHTMLWML/XMLWeb服務器Web服務器應用服務器Web服務器表達層工具支持平臺表達層工具3利用應用服務器的數據分布功能。由于應用服務器將數據表達層的功能和web服務器緊密地結合在一起,所以可直接利用應用服務器來完成表達層的功能。目前的應用服務器逐步走向支持多種客戶端設備和多種協議,如HTML,WML,XML等。采用應用服務器實現應用表達層的好處在于集成難度小,表達部分和應用程序之間的接口比較容易。WAP是什么?

WAP是一個全球性的開放協議,最早是由Motorola、Nokia、Ericsson和美軟件公司P等聯合開發和步署的。目前已有200多個成員單位加入到這個標準的商討和建立中。WAP定義可通用的平臺,把目前Internet網上HTML語言的信息轉換成用WML(WirelessMarkupLanguage)描述的信息,顯示在移動電話的顯示屏上。WAP協議可以廣泛的運用于GSM、CDMA、TDMA、3G等多種網絡,也就是說,它不依賴某種網絡而存在,今天的WAP服務在3G到來后仍然可能繼續存在,不過傳輸速率更快,協議標準也會隨之升級。補充了解無線網頁的WML是什么語言?

WML(WirelessMarkupLanguage-無線標記語言)這種描述語言同我們常聽說的HTML語言同出一家,都屬于XML語言這一大家族。HTML語言寫出的內容,我們可以在我們的PC機上用IE或是Netscape等瀏覽器進行閱讀,而WML語言寫出的文件則是專門用來在手機等的一些無線終端顯示屏上顯示,供人們閱讀的,并且同樣也可以向使用者提供人機交互界面,接受使用者輸入的查詢等信息,然后向使用者返回他所想要獲得的最終信息。

補充了解目前WAP有什么不足?無線數據網絡有如下不足:a.低帶寬,b.更高的隱蔽行,c.較少的聯系穩定行,d.較低的可預測的獲得性。隨著帶寬的增加,手機能量消耗也會增加,這樣就使移動通信器件中有限的電池壽命負荷更重。手持配件有如下不足:a.不甚強大的CPU(主機),b.較小的內存(ROM和RAM),c.能量消耗受到嚴格限制,d.較小的顯示屏,e.不同的輸入設備(例如:電話按鍵盤,聲音輸入器等)

了解§2.1商務表達層的功能實現客戶端的實現客戶端是電子商務系統的最終用戶接口,它既指客戶端的應用程序(比如瀏覽器),也指運行客戶端應用程序的具體硬件設備。§2.1商務表達層的功能實現客戶端的實現硬件設備:普通計算機(pc,工作站)移動終端(手機、PDA、尋呼機)其他信息終端(通過無線或有線方式與電子商務系統連接的家用電器、ATM取款機)§2.1商務表達層的功能實現客戶端的實現要求這些設備支持標準協議(HTML,WML,XML),能夠從網上下載插件,支持連接診斷或在線升級。這些客戶端通常通過internet與電子商務系統連接,交互。一般都具有GUI界面,需要支持電子商務表達層的各種格式化數據表達標準(HTML,XML)。如果客戶端是專用的,那么他們一般支持(HTML/WML的子集或者java標準)§2.1商務表達層的功能實現客戶端的實現瘦客戶端、胖客戶端(邏輯角度)胖客戶端:有數據處理能力的基于傳統的客戶端應用程序:包括專通的應用程序和大部分需要特定插件的多媒體技術(如接受信息廣播的程序boardcast)。可以給終端用戶提供更多的功能,復雜的計算操作通常由客戶端自己完成,減輕了服務器的負擔。瘦客戶端:基于瀏覽器。智能客戶端:§2.1商務表達層的功能實現客戶端的實現靜態內容和動態內容(客戶端設備上顯示的信息內容)靜態內容:客戶端上顯示的內容,預先放置在Web服務器上(html);靜態網頁的基本元素——HTML動態內容:客戶端上顯示的內容,預先服務器上沒有,是在客戶請求發出后,根據請求內容和后臺數據庫中的數據,通過調用執行一個文件(通常為動態腳本)動態產生的。服務器端技術:程序在web服務器上執行,web服務器把程序執行的結果傳給瀏覽器;客戶端技術:程序在瀏覽器上執行,web服務器把程序代碼傳給瀏覽器,瀏覽器執行從服務器上傳下來的程序代碼。AJAX(富客戶端)AsynchronousJavaScriptandXML用戶需求的數據如聯系人列表,可以從獨立于實際網頁的服務端取得并且可以被動態地寫入網頁中通過AJAX,JavaScript可使用JavaScript的XMLHttpRequest對象來直接與服務器進行通信。通過這個對象,JavaScript可在不重載頁面的情況與Web服務器交換數據。AJAX在瀏覽器與Web服務器之間使用異步數據傳輸(HTTP請求),這樣就可使網頁從服務器請求少量的信息,而不是整個頁面。AJAX可使因特網應用程序更小、更快,更友好。AJAX是一種獨立于Web服務器軟件的瀏覽器技術。§2.2

Web系統與HTTP協議2.2.1Web系統(www)原理:商業數據被組織到一個超文本文件中,借助Http協議,通過網絡來傳送Web瀏覽器Web瀏覽器Web瀏覽器TCP/IPHTTPWeb服務器CGI、Script程序數據庫§2.2

Web系統與HTTP協議2.2.1Web系統Web五大要素URL超文本置標語言(HTML)Web服務器(HTTP服務器)Web瀏覽器(Browser)超文本傳輸協議(HTTP)URLURL(UniformResourceLocator)統一資源定位地址。用來表達每個網頁的位置,它是唯一的,瀏覽器借此來尋找web服務器及其上的網頁。借助它,通過點選網頁上的超連接,就可以實現分散網頁間的訪問。幾種形式域名+目錄名+文件名(標準URL)域名+目錄名域名含有程序的網址格式:協議://主機名<:端口號>/標識符(例如:80/index.html)。

HTML超文本標記語言HypertextMarkupLanguage是一種可以包含文字、窗體及圖形信息的超文本文件的表現語言,其目的在于使用web頁面能夠顯示在任何支持html的瀏覽器中,而與聯網的機器平臺無關。1、Content-Type和Content-Language(顯示字符集的設定)說明:設定頁面使用的字符集,用以說明主頁制作所使用的文字以及語言,瀏覽器會根據此來調用相應的字符集顯示page內容。用法:<Metahttp-equiv="Content-Type"Content="text/html;Charset=gb2312"><Metahttp-equiv="Content-Language"Content="zh-CN">注意:該META標簽定義了HTML頁面所使用的字符集為GB2132,就是國標漢字碼。Content-Type的Content還可以是:text/xml等文檔類型;Charset選項:ISO-8859-1(英文)、BIG5、UTF-8、SHIFT-Jis、Euc、Koi8-2、us-ascii,x-mac-roman,iso-8859-2,x-mac-ce,iso-2022-jp,x-sjis,x-euc-jp,euc-kr,iso-2022-kr,gb2312,gb_2312-80,x-euc-tw,x-cns11643-1,x-cns11643-2等字符集;Content-Language的Content還可以是:EN、FR等語言代碼。2、Refresh(刷新)

說明:讓網頁多長時間(秒)刷新自己,或在多長時間后讓網頁自動鏈接到其它網頁。用法:<Metahttp-equiv="Refresh"Content="30"><Metahttp-equiv="Refresh"Content="5;Url=">注意:其中的5是指停留5秒鐘后自動刷新到URL網址。3、Expires(期限)

說明:指定網頁在緩存中的過期時間,一旦網頁過期,必須到服務器上重新調閱。用法:<Metahttp-equiv="Expires"Content="0"><Metahttp-equiv="Expires"Content="Wed,26Feb199708:21:57GMT">注意:必須使用GMT的時間格式,或直接設為0(數字表示多少時間后過期)。4、Pragma(cach模式)

說明:禁止瀏覽器從本地機的緩存中調閱頁面內容。用法:<Metahttp-equiv="Pragma"Content="No-cach">注意:網頁不保存在緩存中,每次訪問都刷新頁面。這樣設定,訪問者將無法脫機瀏覽。5、Set-Cookie(cookie設定)

說明:瀏覽器訪問某個頁面時會將它存在緩存中,下次再次訪問時就可從緩存中讀取,以提高速度。當你希望訪問者每次都刷新你廣告的圖標,或每次都刷新你的計數器,就要禁用緩存了。通常HTML文件沒有必要禁用緩存,對于ASP等頁面,就可以使用禁用緩存,因為每次看到的頁面都是在服務器動態生成的,緩存就失去意義。如果網頁過期,那么存盤的cookie將被刪除。用法:<Metahttp-equiv="Set-Cookie"Content="cookievalue=xxx;expires=Wednesday,21-Oct-9816:14:21GMT;path=/">6、Window-target(顯示窗口的設定)

說明:強制頁面在當前窗口以獨立頁面顯示。用法:<Metahttp-equiv="Widow-target"Content="_top">注意:這個屬性是用來防止別人在框架里調用你的頁面。Content選項:_blank、_top、_self、_parent。7、Pics-label(網頁RSAC等級評定)

說明:在IE的Internet選項中有一項內容設置,可以防止瀏覽一些受限制的網站,而網站的限制級別就是通過該參數來設置的。用法:<METAhttp-equiv="Pics-label"Contect="(PICS-1.1'/ratingsv01.html'Igencomment'RSACiNorthAmericaSever'by'inet@'for''on'1997.06.30T14:21-0500'r(n0s0v0l0))">注意:不要將級別設置的太高。RSAC的評估系統提供了一種用來評價Web站點內容的標準。用戶可以設置MicrosoftInternetExplorer(IE3.0以上)來排除包含有色情和暴力內容的站點。上面這個例子中的HTML取自Microsoft的主頁。代碼中的(n0s0v0l0)表示該站點不包含不健康內容。級別的評定是由RSAC,即美國娛樂委員會的評級機構評定的,如果你想進一步了解RSAC評估系統的等級內容,或者你需要評價自己的網站,可以訪問RSAC的站點:/。8、Enter、Exit(進入與退出)說明:這個是頁面被載入和調出時的一些特效。用法:<Metahttp-equiv="Enter"Content="blendTrans(Duration=0.5)"><Metahttp-equiv="Exit"Content="blendTrans(Duration=0.5)">注意:blendTrans是動態濾鏡的一種,產生漸隱效果。另一種動態濾鏡RevealTrans也可以用于頁面進入與退出效果:<Metahttp-equiv="Enter"Content="revealTrans(duration=x,transition=y)"><Metahttp-equiv="Exit"Content="revealTrans(duration=x,transition=y)">Duration表示濾鏡特效的持續時間(單位:秒)Transition濾鏡類型。表示使用哪種特效,取值為0-23。0矩形縮小1矩形擴大2圓形縮小3圓形擴大4下到上刷新5上到下刷新6左到右刷新7右到左刷新8豎百葉窗9橫百葉窗10錯位橫百葉窗11錯位豎百葉窗12點擴散13左右到中間刷新14中間到左右刷新15中間到上下16上下到中間17右下到左上18右上到左下19左上到右下20左下到右上21橫條22豎條23以上22種隨機選擇一種9、MSThemeCompatible(XP主題)

說明:是否在IE中關閉xp的主題用法:<Metahttp-equiv="MSThemeCompatible"Content="Yes">注意:關閉xp的藍色立體按鈕系統顯示樣式,從而和win2k很象。10、IE6(頁面生成器)說明:頁面生成器generator,是ie6用法:<Metahttp-equiv="IE6"Content="Generator">注意:用什么東西做的,類似商品出廠廠商。11、Content-Script-Type(腳本相關)說明:這是近來W3C的規范,指明頁面中腳本的類型。用法:<Metahttp-equiv="Content-Script-Type"Content="text/javascript">

Enter、Exit是頁面被載入和調出時的一些特效。用法:<Metahttp-equiv="Enter"Content="blendTrans(Duration=0.5)"><Metahttp-equiv="Exit"Content="blendTrans(Duration=0.5)">注意:blendTrans是動態濾鏡的一種,產生漸隱效果。另一種動態濾鏡RevealTrans也可以用于頁面進入與退出效果:<Metahttp-equiv="Enter"Content="revealTrans(duration=x,transition=y)"><Metahttp-equiv="Exit"Content="revealTrans(duration=x,transition=y)">Duration表示濾鏡特效的持續時間(單位:秒)Transition濾鏡類型。表示使用哪種特效,取值為0-23。0矩形縮小1矩形擴大2圓形縮小3圓形擴大4下到上刷新5上到下刷新6左到右刷新7右到左刷新8豎百葉窗9橫百葉窗10錯位橫百葉窗11錯位豎百葉窗12點擴散13左右到中間刷新14中間到左右刷新15中間到上下16上下到中間17右下到左上18右上到左下19左上到右下20左下到右上21橫條22豎條當我們點擊網頁上的鏈接時,瀏覽器頁面就會轉到鏈接指向的新的頁面,我們想在頁面轉換時加上過渡效果。打開這個頁面的原代碼,在<head>與</head>插入代碼:<metahttp-equiv="Exit"content="revealTrans(Duration=3,Transition=5)">這樣這個過渡效果就完成了,很簡單吧。現在我們來測試一下效果如何,打開這個頁面,然后點擊頁面上的鏈接,頁面在轉到下一個頁面的過程中,我們看到頁面是從上到下慢慢的轉換到第二個頁面的。我們現在再試一個效果,將那段代碼換成:<metahttp-equiv="Exit"content="revealTrans(Duration=1,Transition=14)">我們看到頁面是從中間向左右兩端展開過渡的,而且速度上快了一點。原因在于Duration和Transition的值不同。Duration的值為網頁動態過渡的時間,單位為秒。Transition是過渡方式,它的值為0到23,分別對應24種過渡方式。如下表:0盒狀收縮1盒狀放射2圓形收縮3圓形放射4由下往上5由上往下6從左至右7從右至左8垂直百葉窗9水平百葉窗10水平格狀百葉窗11垂直格狀百葉窗12隨意溶解13從左右兩端向中間展開14從中間向左右兩端展開15從上下兩端向中間展開16從中間向上下兩端展開17從右上角向左下角展開18從右下角向左上角展開19從左上角向右下角展開20從左下角向右上角展開21水平線狀展開22垂直線狀展開23隨機產生一種過渡方式當Transition為23時,會隨機產生0到22中的一個過渡效果。例如:<metahttp-equiv="Exit"content="revealTrans(Duration=2,Transition=23)">除了上面兩個參數,還有一個http-equiv:http-equiv="Exit"的意思是指頁面離開時產生效果。它有一種寫法,如:http-equiv="Enter"則是指頁面進入時產生的效果。好了,現在大家自己測試一下效果吧。web服務器也稱HTTP服務器,使存儲文件和其他內容的軟硬件組合,用于提供HTTP及FTP等服務,還可以作為代理服務器。最初,web服務器只提供靜態網頁服務,之后,提供動態網頁服務。瀏覽器是顯示信息的場所,常見的瀏覽器有NetscapeNavigator和MicrosoftInternetExplorer等。瀏覽器能夠理解多種協議,如HTTP,HTTPS(安全的超文本傳輸協議),FTP。也能夠理解多種文檔格式,如:text,html,jpeg,xml.具備根據對象類型調用外部應用的功能。§2.2

Web系統與HTTP協議2.2.2HTTP協議一個實例:測試HTTP協議§2.2

Web系統與HTTP協議2.2.2HTTP協議HTTP(HyperTextTransferProtocol、超文本傳輸協議)是用來在互連網上傳輸文檔的協議,它是Web上最常用也是最重要的協議,也是Web服務器和Web客戶(如瀏覽器)之間傳輸Web頁面的基礎。HTTP是建立在TCP/IP之上的應用協議,但并不是面向連接的,而是一種請求/應答(Request/Response)式協議。§2.2

Web系統與HTTP協議2.2.2HTTP協議瀏覽器通常通過HTTP向Web服務器發送一個HTTP請求,其中包括一個方法、可能的幾個頭、一個體。常用的方法類型包括:GET(請求一個網頁)、POST(傳送一個表單中的信息)、PUT(存入這個信息、類似于FTP中的PUT)和DELETE(刪除這個信息)。Web服務器接受到HTTP請求之后,執行客戶所請求的服務,生成一個HTTP應答返回給客戶。HTTP應答有一個狀態行、可能的幾個頭、一個體。在頭中可以定義返回文檔的內容類型(MIME類型)、Cache控制、失效時間。§2.2

Web系統與HTTP協議2.2.2HTTP協議MIME類型包括:“text/html”(HTML文本)、“image/jpeg”(JPEG圖)、“audio/ra”(RealAudio文件)。HTTP本身也在不斷完善和發展,目前,常用的是HTTP1.1,它更好地利用TCP的特性,對HTTP1.0作了改進。

對于C/S通信模式,在通信的時候,要求Server端程序預先要綁定相關的網絡協議——TCP協議和用于表示自己身份的端口號,并使自己處于偵聽狀態,然后Client端程序才可和Server端程序進行通信,但在通信的時候還要進行TCP連接。上述實現,在利用高級語言編制時,都可以通過一個套結字組件(如Winsock)來完成。什么是網絡編程網絡上兩臺計算機之間如何通信(傳送數據)?Client(客戶)/Server(餐廳)為了通信,網絡要有自己的語言。Internet的語言是什么?(TCP/IP)Winsock控件建立在TCP、UDP協議的基礎上,完成與遠程計算機的通信。即使對TCP/IP不太熟悉的用戶,使用該控件也可以在十幾分鐘內創建一個簡單的客戶機/服務器程序。下面我們對Winsock控件的事件、方法、屬性按其在程序中出現的順序分別作詳細的介紹,以便更好地理解程序源代碼。請求方法在HTTP中,規定web服務器程序綁定的標準端口號是80,也可以使用其他端口號。在HTTP協議中定義了幾個用于通信的命令,通常web服務器支持GET、HEAD、POST三種命令。請求方法(所有方法全為大寫)有多種,各個方法的解釋如下:

GET

請求獲取Request-URI所標識的資源POST

在Request-URI所標識的資源后附加新的數據HEAD

請求獲取由Request-URI所標識的資源的響應消息報頭PUT

請求服務器存儲一個資源,并用Request-URI作為其標識DELETE

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

請求服務器回送收到的請求信息,主要用于測試或診斷CONNECT保留將來使用OPTIONS請求查詢服務器的性能,或者查詢與資源相關的選項和需求服務器程序的實現過程是:(1)服務器程序必須設置好LocalPort(餐廳門)屬性,作為偵聽端口,該值為一個整數(只要是一個其它TCP/IP應用程序沒有使用過的值即可)。(2)使用Listen(正在營業)方法進入偵聽狀態,等待客戶機程序的連接請求。(3)客戶機程序發出連接請求,使服務器程序產生ConnectionRequest事件(客戶提出要一份快餐的請求),該事件得到一個參數requestID(第幾桌的客戶)。(4)服務器程序用Accept方法(有快餐)接受客戶機程序的requestID請求。這樣,服務器程序就可以用SendData方法(送快餐)發送數據了。Accept方法必須用上一步得到的requestID(桌牌號)作為其參數。(5)當服務器程序接收到數據時,產生DataArrival事件(收錢,換個菜等),參數BytesTotal包含接收到的數據字節數。在該事件中,可以用GetData方法接收數據。(6)如果接受到Close事件(客戶離開或餐廳打烊),則用Close方法關閉TCP/IP連接。客戶機程序的實現過程是:(1)客戶程序設置Remotehost(餐廳門牌號)屬性,以便指定運行服務器程序的主機名,該字符串可在“控制面板|網絡|標識|計算機名”中查到。(2)設置RemotePort屬性,以便指定服務器程序的偵聽端口。(3)使用Connect方法,向服務器提出連接請求。(4)服務器接受客戶機程序的請求,客戶機程序產生Connect事件,就可以用SendData方法發送數據了。(5)當客戶機程序接收到數據時,產生DataArrival事件,參數BytesTotal包含接收到的數據字節數。在該事件中,可以用GetData方法接收數據。(6)如果接受到Close事件,則用Close方法關閉連接。表1Winsock控件的State屬性及其描述sckClosed0缺省值,關閉。SckOpen1打開。SckListening2偵聽sckConnectionPending3連接掛起sckResolvingHost4識別主機。sckHostResolved5已識別主機sckConnecting6正在連接。sckConnected7已連接。sckClosing8同級人員正在關閉連接。sckError9錯誤。§2.2

Web系統與HTTP協議2.2.2HTTP協議一個實例:測試HTTP協議(程序代碼)Dimstr1AsStringPrivateSubClose_Click()Winsock1.CloseEndSub

PrivateSubconnect_Click()Winsock1.RemoteHost=““指定運行服務器的主機名Winsock1.RemotePort=80指定服務器程序的偵聽端口

Winsock1.Protocol=sckTCPProtocolWinsock1.connect向服務器提出連接請求EndSubPrivateSubget_Click()

IfWinsock1.State<>7ThenMsgBox"還未與WebServer連接號,請等待或重新連接..."

ExitSubElseWinsock1.SendData"GET/index.htmlHTTP/1.1"+Chr(13)+Chr(10)+"Host:"+vbCrLf+vbCrLf'發送HTTP的GET命令

EndIfEndSub

PrivateSubhead_Click()Winsock1.SendData"HEAD/index.htmlHTTP/1.1"+vbCrLf+"Host:"+vbCrLf+vbCrLfEndSub

PrivateSubpost_Click()Winsock1.SendData"POST/index.htmlHTTP/1.1"+vbCrLf+"Host:"+vbCrLf+"Content-Type:text/plain"+vbCrLf+"Content-Length:7"+vbCrLf+vbCrLf+"brand=A"+vbCrLf+vbCrLfEndSub

PrivateSubWinsock1_DataArrival(ByValbytesTotalAsLong)Winsock1.GetDatastr1Text1.Text=str1EndSub

PrivateSubWinsock1_Error(ByValNumberAsInteger,DescriptionAsString,ByValScodeAsLong,ByValSourceAsString,ByValHelpFileAsString,ByValHelpContextAsLong,CancelDisplayAsBoolean)MsgBox"Winsock出錯!"EndSub

注意在運行之前,需要有相關的web服務器處于運行狀態。本例假設在同一臺機器上安裝了一個ApacheforWindows的web服務器,并已經啟動。程序運行后,先單擊Connect按鈕,然后單擊Get按鈕,文本框中顯示服務器返回內容。狀態代碼概述

Web服務器響應瀏覽器或其他客戶程序的請求時,其應答一般由以下幾個部分組成:一個狀態行,幾個應答頭,一個空行,內容文檔。下面是一個最簡單的應答:

HTTP/1.1200OK

Content-Type:text/plain

HelloWorld

狀態行包含HTTP版本、狀態代碼、與狀態代碼對應的簡短說明信息。在大多數情況下,除了Content-Type之外的所有應答頭都是可選的。但Content-Type是必需的,它描述的是后面文檔的MIME類型。雖然大多數應答都包含一個文檔,但也有一些不包含,例如對HEAD請求的應答永遠不會附帶文檔。有許多狀態代碼實際上用來標識一次失敗的請求,這些應答也不包含文檔(或只包含一個簡短的錯誤信息說明)。

總結執行的順序:(Client在connect時,Server必須處于listen狀態)ConnectionRequest實例(VB):服務器端客戶端注:Winsock.RemoteHost=“string”,string可為形式,也可為點分十進制形式,如:Winsock.RemoteHostIP屬性為只讀,且在connection連通之后才有效,它為對方的Remotehost值Winsock.Localhostname與Winsock.LocalIP屬性也為只讀,分別為本地的主機名與本地IP地址Winsock.State指示狀態,分別為:sckClosed0Closed(default)sckOpen1OpensckListening2ListeningsckConnected7ConnectedsckError9ErrorWinsock.close()方法為關閉連接,對方收到通知后也會產生一個Winsock.close事件。2.2.2HTTP協議在建立TCP連接后,客戶端可以發送一個請求消息到服務器端。服務器在處理請求后發回一個HTTP響應消息到客戶端。請求和響應消息都可以包含任意的傳輸體的信息,通常用Content-Length和Content-Type的

HTTP頭來標記.HTTP協議中的HEAD命令可用來提取web服務時的頭部信息,HEAD命令的語法格式如下:HEAD/index.htmlHTTP/1.1Host:index.html網頁文件名HTTP/1.1是HTTP協議版本號Host后的IP地址為web服務器的地址。§2.2

Web系統與HTTP協議2.2.2HTTP協議一個合法的HTTPPOST請求消息示例:POST/index.htmlHTTP/1.1Host:Content-Type:text/plainContent-Length:7brand=A

一個合法的HTTPGET請求消息示例:GET/index.htmlHTTP/1.1Host:

§2.2

Web系統與HTTP協議POST命令POST命令是建立應用程序時最常用的,與get命令不同,POST命令能夠將任意格式的數據從客戶端發送到服務器端。2.2.2HTTP協議HTTP響應在處理了請求之后,Web服務器將發回一個HTTP響應到客戶端。響應中包括一個狀態代碼,表示請求的結果。返回狀態代碼200,表示HTTP命令已被Web服務器成功解析;返回狀態代碼400,表示Web服務器解析HTTP命令失敗;返回狀態代碼30X,表示Web服務器已將HTTP請求轉向到另一Web服務器;返回狀態代碼50X,表示Web服務器不支持此HTTP請求命令;狀態代碼1XX,為Web服務器保留碼示例:§2.2

Web系統與HTTP協議400BadRequestContent-Length:0200OKContent-Type:text/plainContent-Length:12dlroW,olleH

307TemporarilyMovedLocation:4/foobarContent-Length:0100

Continue

初始的請求已經接受,客戶應當繼續發送請求的其余部分。(HTTP1.1新)

101

SwitchingProtocols

服務器將遵從客戶的請求轉換到另外一種協議(HTTP1.1新)

200

OK

一切正常,對GET和POST請求的應答文檔跟在后面。如果不用setStatus設置狀態代碼,Servlet默認使用202狀態代碼。

201

Created

服務器已經創建了文檔,Location頭給出了它的U

溫馨提示

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

評論

0/150

提交評論