- 可擴展的。SOAP 無需中斷已有的應用程序, SOAP 客戶端、 服務器和協議自身都能發展。而且SOAP 能極好地支持中間介質和層次化的體系結構。
- 簡單的。客戶端發送一個請求,調用相應的對象, 然后服務器返回結果。這些消息是XML 格式的,並且封裝成符合HTTP 協議的消息。因此,它符合任何路由器、 防火牆或代理服務器的要求。
- 完全和廠商無關。SOAP可以相對於平台、 操作系統、 目標模型和編程語言獨立實現。另外,傳輸和語言綁定以及數據編碼的參數選擇都是由具體的實現決定的。
- 與編程語言無關。SOAP 可以使用任何語言來完成,只要客戶端發送正確SOAP 請求( 也就是說, 傳遞一個合適的參數給一個實際的遠端服務器)。SOAP 沒有對象模型,應用程序可以捆綁在任何對象模型中。
- 與平台無關。SOAP 可以在任何操作系統中無需改動正常運行。
SOAP、WSDL(WebServicesDescriptionLanguage)、UDDI(UniversalDescriptionDiscovery andIntegration)之一, soap用來描述傳遞信息的格式, WSDL 用來描述如何訪問具體的接口, uddi用來管理,分發,查詢webService 。具體實現可以搜索 Web Services簡單實例 ; SOAP 可以和現存的許多
因特網協議和格式結合使用,包括
超文本
傳輸協議(HTTP),
簡單郵件傳輸協議(SMTP),
多用途網際郵件擴充協議(MIME)。它還支持從
消息系統到
遠程過程調用(RPC)等大量的
應用程序。SOAP使用基於XML的
數據結構和
超文本
傳輸協議(HTTP)的組合定義了一個標准的方法來使用Internet上各種不同操作環境中的
分布式對象。
把SOAP綁定到HTTP提供了同時利用SOAP的樣式和分散的靈活性的特點以及HTTP的豐富的特征庫的優點。在HTTP上傳送SOAP並不是說SOAP會覆蓋現有的HTTP語義,而是HTTP上的SOAP語義會自然的映射到HTTP語義。在使用HTTP作為協議綁定的場合中,RPC請求映射到HTTP請求上,而RPC應答映射到HTTP應答。然而,在RPC上使用SOAP並不僅限於HTTP協議綁定。
SOAP
消息基本上是從發送端到接收端的單向傳輸,但它們常常結合起來執行類似於請求 / 應答的模式。所有的 SOAP
消息都使用 XML 編碼。一條 SOAP
消息就是一個包含有一個必需的 SOAP 的封裝包,一個可選的 SOAP 標頭和一個必需的 SOAP 體塊的 XML 文檔。把 SOAP 綁定到 HTTP 提供了同時利用 SOAP 的樣式和分散的靈活性的特點以及 HTTP 的豐富的特征庫的優點。在
HTTP上傳送 SOAP 並不是說 SOAP 會覆蓋現有的 HTTP 語義,而是 HTTP 上的 SOAP 語義會自然的映射到 HTTP 語義。在使用 HTTP 作為協議綁定的場合中, RPC 請求映射到 HTTP 請求上,而 RPC 應答映射到 HTTP 應答。然而,在 RPC 上使用 SOAP 並不僅限於 HTTP 協議綁定。SOAP也可以綁定到TCP和UDP協議上。
SOAP:簡單對象訪問協議,簡單對象訪問協議(SOAP)是一種輕量的、簡單的、基於 XML 的協議,它被設計成在 WEB 上交換結構化的和固化的信息。 SOAP 可以和現存的許多因特網協議和格式結合使用,包括超文本傳輸協議( HTTP),簡單郵件傳輸協議(SMTP),多用途網際郵件擴充協議(MIME)。它還支持從消息系統到遠程過程調用(RPC)等大量的應用程序。SOAP協議可以簡單地理解為:SOAP=RPC+HTTP+XML,即采用HTTP作為通信協議,RPC(Remote Procedure Call Protocol 遠程過程調用協議)作為一致性的調用途徑,XML作為數據傳送的格式,從而允許服務提供者和服務客戶經過防火牆在Internet上進行通信交互。
