Web 服務是一種新型的 Web 應用程式。它們是自適應、自我描述、模組化的應用程式,這些應用程式可以跨越Web 進行發表、定位和呼叫。下面YJBYS小編為大家整理了關於Web服務實現技術的文章,希望對你有所幫助。
Web 服務實現技術
物件介面描述: WSDL
如果我們打算髮布所有的 Web 服務,就需要有個描述它們的通用語言。如果我正提供一個服務,就需要將其描述給其他人,如果我想使用一個服務,就需要將我所尋找的服務描述出來。WSDL 就是基於此目的設計出來的。
物件訪問: SOAP
SOAP 提供一套標記來表示在 Web 上使用 HTTP 傳輸協議(從 SOAP 1.1 以來,SMTP 也可以)傳送的不同資訊塊的作用。但是,SOAP 向您提供的能力遠遠強於HTML。 使用 SOAP,您的程式向 SOAP 伺服器傳送“SOAP 請求”(一個簡短的 XML 文件,描述在遠端機器上要呼叫的方法和所有要傳遞給它的引數)。 SOAP 伺服器將嘗試用那些引數執行該方法,並將 SOAP 響應發回程式。響應可以是執行的結果,也可以是相應的錯誤訊息。
物件介面發現: UDDI
UDDI是用於 Web 服務註冊資訊的規範。正如我們已經討論過的,釋出後的Web 服務是可以相互被發現的;通過在UDDI的釋出伺服器中註冊Web服務的資訊,Web服務的請求者和代理可通過這個釋出伺服器找到它們所需要的服務。在釋出伺服器中,業務邏輯和服務都是以通用的XML 格式描述的。在這些 XML 中的結構資料很容易進行搜尋、分析和處理。
物件實現: EJB, COM+, CORBA以及任何可用於物件實現的技術
SOAP 結構
SOAP為在一個鬆散的、分佈的環境中使用XML對等地交換結構化的和型別化的`資訊提供了一個簡單且輕量級的機制
SOAP envelope (SOAP信封)
SOAP encoding rules (SOAP編碼規則)
SOAP RPC representation (SOAP RPC表示)
SOAP binding (SOAP繫結)
Request/Response Message
Request 呼叫遠端物件的某個方法
Response 返回該方法執行後的輸出結果
SOAP Message 結構
SOAP 定義了一個“envelope”物件使用“envelope”包裝訊息,自身訊息可以採用自身特定的XML詞彙使用namespace來區分彼此。
SOAP例子:
1
2001-06-22 11:00am
Web Services Description Language(WSDL)
使用XML進行描述類似IDL, 不過是使用XML格式
描述了服務的操縱資訊
Service Interface
Implementation Details
Access Protocol
Contact Endpoint
WSDL是早先技術的綜合
IBM's NASSL
Microsoft's SDL
WSDL Elements
types: 描述將會使用的資料型別
message: 定義傳入傳出的訊息格式
portType: 定義了一個入口的型別(使用了怎樣的request/response訊息對)
binding: 確定portType將會使用何種傳輸協議(SOAP/HTTP-POST/…)
port: 定義了一個關聯某個binding的服務入口
service: 一組port組成的Web Service
Universal Description, Discovery and Integration(UDDI)
UDDI 註冊中心包含了通過程式手段可以訪問到的對企業和企業支援的服務所做的描述。此外,還包含對 Web 服務所支援的因行業而異的規範、分類法定義(用於對於企業和服務很重要的類別)以及標識系統(用於對於企業很重要的標識)的引用。UDDI 提供了一種程式設計模型和模式,它定義與註冊中心通訊的規則。UDDI 規範中所有 API 都用 XML 來定義,包裝在 SOAP 信封中,在 HTTP 上傳輸。
UDDI 訊息的傳輸,通過 HTTP 從客戶機的 SOAP 請求傳到註冊中心節點,然後再反向傳輸。註冊中心伺服器的 SOAP 伺服器接收 UDDI SOAP 訊息、進行處理,然後把 SOAP 響應返回給客戶機。就註冊中心條例而言,客戶機發出的要修改資料的請求必須確保是安全的、經過驗證的事務。