2018年10月25日 星期四

WebService服務的三種途徑Endpoint Disco WSDL 有什麼不同

WebService服務的三種途徑Endpoint Disco WSDL 有什麼不同

UDDI, DISCO, 以及WSDL 相應的都是什麼的?
下面這真是一圖道破天機
http://xhinker.com/content/binary/083009_1627_WebService1.gif
UDDI可以看做是世界上公開Web Service的黃頁,對各種各樣的Web Sercice進行分類和描述,使用disco文件可以去訪問一台服務器裡有哪些Web Service可用

      為什麼要使用UDDI 呢?在很久很久以前,在Google 都還沒有問世的時候,還記得是怎麼上網的嗎?那時, 新浪,搜狐是你上網必去的,為什麼?因為即便連上了網,都不知到該到哪裡去,而那個時候新浪和搜狐等門戶網站把站點做了分類和登記,以便於用戶找到需要的網站。老美那個時候同樣,使用的是雅虎。那個時候的雅虎就相當於現在的Google. 時過境遷,如今Google 成了最大的老大,成了全球的網站門戶,是Web 領域的UDDI.

在網絡上還有許許多多我們看不到的Web Services,比如天氣預報Service ,比如股票信息Service. 你在開發的時候當然知道你自己的Web Service. 可是當你發布了一個Web Service 並且想讓全世界的人都知道你有一個Web Service ,你該怎麼辦好?google 是不會收錄你的Web Service 的,這個時候你就需要去UDDI 註冊你的Web Service. 這樣別人訪問UDDI以及其下的分類的時候就有可能發現你的Web Service . 只是UDDI 仍舊有缺陷。

補充知識:
什麼是WebService?
      Web Services是一種基於組件的軟件平台,是面向服務的Internet應用。Web Services是應用於Internet的,而不是限於局域網或試驗環境。這要求提出的Web Services框架必須適用於現有的Internet軟件和硬件環境,即服務的提供者所提供的服務必須具有跨平台、跨語言的特性。其次,Web Services所提供的服務不僅是向人,更需服務於其它應用系統。現有的Web網站也可以認為是面向服務的,但這種服務僅僅可以提供給人使用(只有人類才可以讀懂瀏覽器下載的頁面) 。而新一代的Web Services所提供的服務應能被機器所讀懂,例如其它應用程序及移動設備中的軟件系統。這樣,我們可以看出,Web Services的發展方向實際上是構造一個在現有Internet技術上的分佈計算系統。
      Web Services框架的核心技術包括SOAP ,WSDL和UDDI ,它們都是以標準的XML文檔的形式表的。

什麼是SOAP?

  SOAP是Web services的通信協議。SOAP是一種簡單的、輕量級的基於XML的機制,用於在網絡應用程序之間進行結構化數據交換。SOAP包括三部分:一個定義描述消息內容的框架的信封,一組表示應用程序定義的數據類型實例的編碼規則,以及表示遠程過程調用和響應的約定。

什麼是WSDL?

  WSDL表示WEB服務說明語言。WSDL文件是一個XML文檔,用於說明一組SOAP消息以及如何交換這些消息。

什麼是UDDI?

  UDDI(統一描述發現和集成)提供一種發布和查找服務描述的方法。UDDI數據實體提供對定義業務和服務信息的支持。WSDL中定義的服務描述信息是UDDI註冊中心信息的補充。


Endpoint:  http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx   
web服務的URI地址,你訪問之後,就會出現web服務的相關類描述、方法列表以及方法描述。

Disco:  http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?disco   
通過這個可以找到該web服務。即利用了web服務發現機制中的一種發現機制disco。

WSDL:  http://webservice.webxml.com.cn/WebServices/WeatherWS.asmx?wsdl  
該web服務的描述性語言。即Web Services Description Language。用來描述你的web服務定義的方法和屬性、binding協議部分、port端口以及服務URI。

沒有留言:

張貼留言