<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    小菜毛毛技術(shù)分享

    與大家共同成長

      BlogJava :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
      164 Posts :: 141 Stories :: 94 Comments :: 0 Trackbacks
    做客戶端有必要對soap做基本的了解,開發(fā)手機(jī)的程序員可能對web service不是太了解。
    soap簡單說是基于xml的,建立在http協(xié)議上的協(xié)議,用來調(diào)用web server提供的service。
    這里轉(zhuǎn)載一個對soap的簡單原理,希望對大家有幫助

    什么是Web Services
      
      從表面上看,Web service 就是一個應(yīng)用程序,它向外界暴露出一個能夠通過Web進(jìn)行調(diào)用的API。也就是說,可以利用編程的方法通過Web來調(diào)用這個應(yīng)用程序。
      
      對Web service 更精確的解釋: Web services是建立可互操作的分布式應(yīng)用程序的新平臺。Web service平臺是一套標(biāo)準(zhǔn),它定義了應(yīng)用程序如何在Web上實現(xiàn)互操作性。你可以用任何你喜歡的語言,在任何你喜歡的平臺上寫Web service ,只要我們可以通過Web service標(biāo)準(zhǔn)對這些服務(wù)進(jìn)行查詢和訪問。
      
      不管你的Web service是用什么工具,什么語言寫出來的,只要你用SOAP協(xié)議通過HTTP來調(diào)用它,總體結(jié)構(gòu)都一致。通常,你用你自己喜歡的語言(如VB 6或者VB.NET)來構(gòu)建你的Web service,然后用SOAP Toolkit或者.NET的內(nèi)建支持來把它暴露給Web客戶。于是,任何語言,任何平臺上的客戶都可以閱讀其WSDL文檔,以調(diào)用這個Web service。客戶根據(jù)WSDL描述文檔,會生成一個SOAP請求消息。Web service都是放在Web服務(wù)器 (如IIS) 后面的,客戶生成的SOAP請求會被嵌入在一個HTTP POST請求中,發(fā)送到Web服務(wù)器來。Web服務(wù)器再把這些請求轉(zhuǎn)發(fā)給Web service請求處理器。請求處理器的作用在于,解析收到的SOAP請求,調(diào)用Web service,然后再生成相應(yīng)的SOAP應(yīng)答。Web服務(wù)器得到SOAP應(yīng)答后,會再通過HTTP應(yīng)答的方式把它送回到客戶端。

    iGoogle 發(fā)表于 2010-10-24 17:00

    基本概念
      
      SOAP
      
      XML和XSD
      
      WSDL(Web Services Description Language)
      
      WSML(Web Services Meta Language)
      
      什么時候使用Web Services
      
      Web service是創(chuàng)建可互操作的分布式應(yīng)用程序的新平臺。Web service 的主要目標(biāo)是跨平臺的可互操作性。為了達(dá)到這一目標(biāo),Web service 是完全基于XML、XSD等獨(dú)立于平臺、獨(dú)立于軟件供應(yīng)商的標(biāo)準(zhǔn)的。
      
      Web service在應(yīng)用程序跨平臺和跨網(wǎng)絡(luò)進(jìn)行通信的時候是非常有用的。Web service適用于應(yīng)用程序集成、B2B集成、代碼和數(shù)據(jù)重用,以及通過Web進(jìn)行客戶端和服務(wù)器的通信的場合。
      
      當(dāng)然,Web service也不是萬能的,你不能到處濫用Web service。在有些情況下,Web service 會降低應(yīng)用程序的性能,而不會帶來任何好處。例如,一臺機(jī)器或一個局域網(wǎng)里面運(yùn)行的同構(gòu)應(yīng)用程序就不應(yīng)該用Web service 進(jìn)行通信。
      
      如何調(diào)用Web Services
      
      客戶端:取得服務(wù)端的服務(wù)描述文件WSDL,解析該文件的內(nèi)容,了解服務(wù)端的服務(wù)信息,以及調(diào)用方式。根據(jù)需要,生成恰當(dāng)?shù)腟OAP請求消息(指定調(diào)用的方法,已經(jīng)調(diào)用的參數(shù)),發(fā)往服務(wù)端。等待服務(wù)端返回的SOAP回應(yīng)消息,解析得到返回值。


      服務(wù)端:生成服務(wù)描述文件,以供客戶端獲取。接收客戶端發(fā)來的SOAP請求消息,解析其中的方法調(diào)用和參數(shù)格式。根據(jù)WSDL和WSML的描述,調(diào)用相應(yīng)的COM對象來完成指定功能,并把返回值放入SOAP回應(yīng)消息返回給用戶。
      
      高層接口
      
      使用高層接口,不需要知道SOAP和XML的任何信息,就可以生成和使用一個WebService。Soap Toolkit 2.0通過提供兩個COM對象――SoapClient和SoapServer,來完成這些功能。
      
      在客戶端,只需要生成一個SoapClient實例,并用WSDL作為參數(shù)來調(diào)用其中的mssoapinit方法。SoapClient對象會自動解析 WSDL文件,并在內(nèi)部生成所有Web Service的方法和參數(shù)信息。之后,你就可以像調(diào)用IDispatch接口里的方法一樣,調(diào)用里面所有的方法。在VB或是腳本語言里,你甚至可以直接在SoapClient對象名后面直接加上.方法(參數(shù)…)進(jìn)行調(diào)用。
      
      低層接口
      
      要使用低層接口,你必須對SOAP和XML有所了解。你可以對SOAP的處理過程進(jìn)行控制,特別是要做特殊處理的時候。
      
      在客戶端,首先要創(chuàng)建一個HttpConnector對象,負(fù)責(zé)HTTP連接。設(shè)定Connector的一些頭部信息,比如EndPoinURL和 SoapAction等。如果網(wǎng)絡(luò)連接需要使用代理服務(wù)器,那也要在這里設(shè)定相關(guān)的信息。接著創(chuàng)建SoapSerializer對象,用于生成Soap消息。按照WSDL里定義,把所有參數(shù)按順序序列化,得到一個完整的SOAP請求消息。該Soap消息,作為Payload通過HttpConnector 被發(fā)送到服務(wù)端。最后,生成一個
    posted on 2010-11-15 16:57 小菜毛毛 閱讀(12104) 評論(0)  編輯  收藏 所屬分類: webservice
    主站蜘蛛池模板: 一区二区三区亚洲| 精品无码免费专区毛片| 亚洲国产精品成人午夜在线观看| 好看的亚洲黄色经典| 亚洲人成色7777在线观看不卡 | 亚洲视频中文字幕| 国产亚洲精久久久久久无码77777| 国产美女做a免费视频软件| 成熟女人牲交片免费观看视频| 国产精品久久免费| 99re视频精品全部免费| a毛看片免费观看视频| 黄色网址免费在线观看| 亚洲色少妇熟女11p| 亚洲综合色一区二区三区小说| 亚洲精品无码精品mV在线观看| 久久亚洲精品无码观看不卡| 亚洲成A人片在线观看中文| 免费A级毛片无码A∨男男| 国产男女性潮高清免费网站| 国内一级一级毛片a免费| 在线观看人成网站深夜免费| 女人18毛片水真多免费看| 在线中文高清资源免费观看| 成人性生交大片免费看午夜a| 黄色成人网站免费无码av| 在线免费观看污网站| 成人看的午夜免费毛片| 免费无码不卡视频在线观看| 69av免费视频| 99久久人妻精品免费二区| 亚洲一区二区三区精品视频 | 亚洲av无码天堂一区二区三区| 超清首页国产亚洲丝袜| 噜噜噜亚洲色成人网站∨| 亚洲人成欧美中文字幕| 国产精品福利在线观看免费不卡| 99热在线免费播放| 免费看AV毛片一区二区三区| 亚洲一区无码中文字幕| 亚洲一区二区三区在线观看蜜桃 |