Web Services基礎學習(W3C)

1.Web services 使用 XML 來編解碼數據,並使用 SOAP 來傳輸數據html

2.基礎的 Web Services 平臺是 XML + HTTP。web

Web services 平臺的元素:

  • SOAP (簡易對象訪問協議)
  • UDDI (通用描述、發現及整合)
  • WSDL (Web services 描述語言) 

經過SOAP在Web上提供的軟件服務,使用WSDL文件進行說明,並經過UDDI進行註冊。編程

什麼是 SOAP?

  • SOAP 指簡易對象訪問協議
  • SOAP 是一種通訊協議
  • SOAP 用於應用程序之間的通訊
  • SOAP 是一種用於發送消息的格式
  • SOAP 被設計用來經過因特網進行通訊
  • SOAP 獨立於平臺
  • SOAP 獨立於語言
  • SOAP 基於 XML
  • SOAP 很簡單並可擴展
  • SOAP 容許您繞過防火牆
  • SOAP 將做爲 W3C 標準來發展 

什麼是 WSDL?

WSDL 是基於 XML 的用於描述 Web Services 以及如何訪問 Web Services 的語言。api

  • WSDL 指網絡服務描述語言
  • WSDL 使用 XML 編寫
  • WSDL 是一種 XML 文檔
  • WSDL 用於描述網絡服務
  • WSDL 也可用於定位網絡服務
  • WSDL 還不是 W3C 標準 

什麼是UDDI?

UDDI 是一種目錄服務,經過它,企業可註冊並搜索 Web services。網絡

  • UDDI 指通用的描述、發現以及整合(Universal Description, Discovery and Integration)。
  • UDDI 是一種用於存儲有關 web services 的信息的目錄。
  • UDDI 是一種由 WSDL 描述的網絡服務接口目錄。
  • UDDI 經由 SOAP 進行通迅。
  • UDDI 被構建於 Microsoft .NET 平臺之中。 

Web服務的體系結構是基於Web服務提供者、Web服務請求者、Web服務中介者三個角色和發佈、發現、綁定三個動做構建的。編程語言

 Web service的體系結構函數

實現一個完整的Web服務包括如下步驟:url

 Web服務提供者設計實現Web服務,並將調試正確後的Web服務經過Web服務中介者發佈,並在UDDI註冊中心註冊; (發佈)spa

 Web服務請求者向Web服務中介者請求特定的服務,中介者根據請求查詢UDDI註冊中心,爲請求者尋找知足請求的服務; (發現)設計

 Web服務中介者向Web服務請求者返回知足條件的Web服務描述信息,該描述信息用WSDL寫成,各類支持Web服務的機器都能閱讀;(發現)

◆ 利用從Web服務中介者返回的描述信息生成相應的SOAP消息,發送給Web服務提供者,以實現Web服務的調用;(綁定)

 Web服務提供者按SOAP消息執行相應的Web服務,並將服務結果返回給Web服務請求者。(綁定)

 

SOAP 構建模塊 
一條 SOAP 消息就是一個普通的 XML 文檔,包含下列元素:  

  ◆必需的 Envelope 元素,可把此 XML 文檔標識爲一條 SOAP 消息   

  ◆可選的 Header 元素,包含頭部信息  

  ◆必需的 Body 元素,包含全部的調用和響應信息  

  ◆可選的Fault 元素,提供有關在處理此消息所發生錯誤的信息

WSDL 文檔結構

WSDL 文檔是利用這些主要的元素來描述某個web service 的:

元素 定義
<portType> web service 執行的操做
<message> web service 使用的消息
<types> web service使用的數據類型
<binding> web service 使用的通訊協議

  

WSDL 端口

   <portType> 元素是最重要的 WSDL 元素。它可描述一個web service、可被執行的操做,以及相關的消息。 能夠把<portType> 元素比做傳統編程語言中的一個函數庫(或一個模塊、或一個類)。

WSDL 消息 

  <message> 元素定義一個操做的數據元素。每一個消息均由一個或多個部件組成。能夠把這些部件比做傳統編程語言中一個函數調用的參數。

 WSDL types  

  <types> 元素定義 web service 使用的數據類型。 爲了最大程度的平臺中立性,WSDL 使用XML Schema 語法來定義數據類型。

 WSDL Bindings  

  <binding> 元素爲每一個端口定義消息格式和協議細節

如何調用Web Services ?
  客戶端:取得服務端的服務描述文件WSDL,解析該文件的內容,瞭解服務端的服務信息,以及調用方式。根據須要,生成恰當的SOAP請求消息(指定調用的方法,已經調用的參數),發往服務端。等待服務端返回的SOAP迴應消息,解析獲得返回值。
  服務端:生成服務描述文件,以供客戶端獲取。接收客戶端發來的SOAP請求消息,解析其中的方法調用和參數格式。根據WSDL和WSML的描述,調用相應的COM對象來完成指定功能,並把返回值放入SOAP迴應消息返回給用戶。

  高層接口
  使用高層接口,不須要知道SOAP和XML的任何信息,就能夠生成和使用一個WebService。Soap Toolkit 2.0經過提供兩個COM對象――SoapClient和SoapServer,來完成這些功能。
  在客戶端,只須要生成一個SoapClient實例,並用WSDL做爲參數來調用其中的mssoapinit方法。SoapClient對象會自動解析WSDL文件,並在內部生成全部Web Service的方法和參數信息。以後,你就能夠像調用IDispatch接口裏的方法同樣,調用裏面全部的方法。在VB或是腳本語言裏,你甚至能夠直接在SoapClient對象名後面直接加上.方法(參數?)進行調用。

 

 

參考文獻:

http://www.cnblogs.com/Jessy/p/3528341.html

http://wenku.baidu.com/link?url=YEvlnDWmGRxfIKpIp84uypkTgId14M49PolVHk0T4my0kgeMSUjhv0K_XFLYj4KcEkw55xbgnZnBIGn2NBhUq_XzMLk-bWFTUIWEx7xYGi7

相關文章
相關標籤/搜索