初步學習SOAP

 
1.       SOAP簡介:
1) SOAP(simple object access protocol)是一種基於XML的消息規範,它描述了數據類型的消息格式以及一整套串行化規則,包括結構化類型和數組。另外,它還描述瞭如何使用HTTP來傳輸消息。
2) SOAP 規範定義了兩種可以使用 SOAP 的方式。第一種方式,SOAP 可用於描述一個一般的 XML 文檔。這種格式的 SOAP 消息被稱作消息傳遞(或文檔)樣式。第二種方式,有一種更特殊的 SOAP 格式,它要求嵌套的 XML 文檔遵循遠程過程調用(remote procedure call(RPC))語義。RPC 樣式的 SOAP 消息要麼用一個過程調用的名稱和參數值來描述此過程調用,要麼描述一個過程的返回。
2.       SOAP的發展歷史:
SOA的概念最初由Gartner公司提出,由於當時的技術水平和市場環境尚不具備真正實施SOA的條件,因此當時SOA並未引起人們的廣泛關注,SOA 在當時沉寂了一段時間。伴隨着互聯網的浪潮,越來越多的企業將業務轉移到互聯網領域,帶動了電子商務的蓬勃發展。爲了能夠將公司的業務打包成獨立的、具有 很強伸縮性的基於互聯網的服務,人們提出了Web服務的概念,這可以說是SOA的發端。
 
3SOAP 消息傳輸涉及到三個主要角色:
1)SOAP 發送方創建一條 SOAP 消息並將它發送給最終的 SOAP 接收方。
可以放置一個可選的 SOAP 中介體,以便在 SOAP 發送方和最終的 SOAP 接收方之間攔截一條 SOAP 消息。任何攔截 SOAP 消息的中介體都能夠在把消息發送到最終的 2)SOAP 目的地之前分析這條消息以執行過濾、日誌記錄、高速緩存之類的操作。SOAP 中介體可以被看作是一個發送方和接收方。
1) SOAP 發送方生成的 SOAP 消息的期望目的地((也就是說,發送方不是一箇中介體))被稱作最終 SOAP 接收方。
4SOAP的結構:
1)SOAP Envelope 元素(SOAP 消息的根元素)包含   一 個可選的 SOAP Header 和一些必需SOAP        Body 元素。SOAP 協議名稱空間前綴    http://schemas.xmlsoap.org/soap/envelope/      )通常在 Envelope 開標記中聲明。             
 
 2.)個可選的且可擴展的 Header 元素,它用    於描述安全性、事務和對話狀態信息之類的元       數據。                                     
3.)需的 Body 元素包含發送方的 XML 文檔。發送    方的 XML 文檔絕對不能包含 XML 聲明或 DOCTYPE 聲明。發送方的文檔可以遵守兩個主要的       範例:文檔樣式或 RFC 樣式。在下兩節中將描述這    兩個範例。可以通過設置 encodingStyle 屬性來指定 Body 的內容的序列化規則。標準的 SOAP 編碼名稱    空間是        http://schemas.xmlsoap.org/soap/encoding/
 
4)faults 的元素可以被處理節點(SOAP 中介體或最終的 SOAP 目的地)用來描述它可能碰到的任何異常情況,這些異常情況可能在它閱讀 SOAP 消息時發生。
5.)還有一個 attachment,它指定嵌入和描述 SOAP 消息附件的方式。附件可以是任何類型的文件,無論是基於二進制的還是基於字符的。附件規範應用了 MIME 規範規則,而不是新建一種編碼模式。

SOAP Envelope 定義了一個描述信息中的內容、發送者、接受者、處理者以及如何處理的框架。

SOAP Encoding rule(編碼規則) 用於表示使用數據類型的實例。

SOAP RPC表示遠程過程調用和應答的協定。

SOAP Binding 使用底層協議交換信息。

4.SOAP的消息應用模式:

1)請求/響應模式

2fire-and-forget模式

       1.面向單個接收者

       2.面向多個接收者

 3)高級消息交換模式

 4)增量解析和處理模式

.5)緩存模式

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章