XML Web Service 基礎結構
本主題專門說明舊有技術。 應該使用下列建立 XML Web Service 及 XML Web Service 用戶端: Windows Communication Foundation.
對於作業系統、物件模型和程式語言的選擇,XML Web Service 必須沒有任何既定的偏向,才能夠成功地包容網路中的各種差異性。此外,若要和其他 Web 技術一樣廣受愛用,XML Web Service 還必須具備下列特點:
鬆散耦合:如果對於兩個系統的要求只是規定雙方必須了解先前所提以文字為主的自我描述訊息,那麼這兩個系統即視為鬆散耦合。另一方面,緊密耦合系統則是指定大量自訂的處理工作來讓通訊正常運作,而且要求系統之間必須取得更深入的了解。
無所不在的通訊:在目前或近期建置作業系統的任何人,若不將連接網際網路的能力加入系統,而可以提供無所不在的通訊通道,是很不可能的事。因此,提供可將幾乎任何系統或裝置連接到網際網路的能力,是為了要確保連接網際網路的其他系統或裝置可以普遍使用這類系統和裝置。
通用資料格式:只要越過封閉的專屬通訊方法而採用開放的現有標準,任何支援相同開放標準的系統就都能夠了解 XML Web Service。如果使用以文字為主的自我描述訊息,XML Web Service 及其用戶端將可以共用這些訊息,而不需知道各個基礎系統的組成架構,這使得在不同的自發系統之間進行通訊成為可能。XML Web Service 會使用 XML 來獲致這種能力。
XML Web Service 使用的基礎結構會提供下列各項:探索機制 (用來尋找 XML Web Service)、服務描述 (用於定義使用這些服務的方式) 和標準電傳格式 (用以進行通訊)。下圖顯示這個基礎結構的範例。
XML Web Service 基礎結構
基礎結構要件 | 角色 |
---|---|
XML Web Service 目錄提供集中位置,以用來尋找其他組織提供的 XML Web Service。XML Web Service 目錄 (例如,UDDI 登錄) 實現了這個角色。XML Web Service 用戶端則不一定會參考 XML Web Service 的目錄。 |
|
XML Web Service 探索是尋找或探索一或多個相關文件 (使用 Web 服務描述語言 (WSDL) 描述特定的 XML Web Service) 的程序。DISCO 規格定義了尋找服務描述的演算法。如果 XML Web Service 用戶端知道服務描述的位置,則可以略過探索程序。 |
|
為了了解如何與特定 XML Web Service 進行互動,提供定義 XML Web Service 所支援之互動方式的服務描述,有其必要。XML Web Service 用戶端必須知道與 XML Web Service 互動的方式,才能夠使用這個服務。 |
|
為了啟用通用通訊,XML Web Service 通訊會使用開放的電傳格式,這些格式是任何能支援最常用 Web 標準的系統都可以了解的通訊協定。SOAP 是 XML Web Service 通訊的主要通訊協定。 |