SOAP(簡單對象訪問協議)
- 來源:縱橫數據
- 作者:中橫科技
- 時間:2013/2/19 13:40:36
- 類別:新聞資訊
SOAP 核心技術
SOAP采用了已經廣泛使用的兩個協議:HTTP 和XML。HTTP用于實現 SOAP 的RPC 風格的傳輸, 而XML 是它的編碼模式。采用幾行代碼和一個XML 解析器, HTTP 服務器( MS 的 IIS 或 Apache) 立刻成為SOAP 的 ORBS。SOAP 通訊協議使用 HTTP 來發送XML 格式的信息。HTTP與RPC 的協議很相似,它簡單、 配置廣泛,并且對防火墻比其它協議更容易發揮作用。HTTP 請求一般由 Web 服務器軟件(如 IIS 和Apache)來處理, 但越來越多的應用服務器產品正在支持HTTP。XML 作為一個更好的網絡數據表達方式( NDR)。SOAP 把 XML 的使用代碼化為請求和響應參數編碼模式, 并用HTTP 作傳輸。具體地講, 一個SOAP 方法可以簡單地看作遵循SOAP編碼規則的HTTP請求和響應, 一個 SOAP 終端則可以看作一個基于HTTP 的URL, 它用來識別方法調用的目標。像CORBA/ IIOP一樣, SOAP不需要具體的對象綁定到一個給定的終端, 而是由具體實現程序來決定怎樣把對象終端標識符映像到服務器端的對象。
SOAP 的優點
(1) SOAP 是可擴展的。SOAP 無需中斷已有的應用程序, SOAP 客戶端、 服務器和協議自身都能發展。
而且SOAP 能極好地支持中間介質和層次化的體系結構。
(2) SOAP 是簡單的。客戶端發送一個請求,調用相應的對象, 然后服務器返回結果。這些消息是XML 格式的,并且封裝成符合HTTP 協議的消息。因此,它符合任何路由器、 防火墻或代理服務器的要求。
(3) SOAP 是完全和廠商無關。SOAP可以相對于平臺、 操作系統、 目標模型和編程語言獨立實現。另外 , 傳輸和語言綁定以及數據編碼的參數選擇都是由具體的實現決定的。
(4) SOAP 與編程語言無關。SOAP 可以使用任何語言來完成, 只要客戶端發送正確SOAP 請求( 也就 是說, 傳遞一個合適的參數給一個實際的遠端服務器)。SOAP 沒有對象模型, 應用程序可以捆綁在任何對象模型中。
(5) SOAP 與平臺無關。SOAP 可以在任何操作系統中無需改動正常運行