以下摘自互聯網。
-
1 Web服務傳輸協議概述
Web Service傳輸協議概述在ASP.NET,XML Web Service支持三種協議與用戶交換數據。這三個協議是:
1.HTTP-GET
2.HTTP-POST
3.肥皂
在這三個協議中,HTTP(超文本傳輸協議)是壹個眾所周知的協議,它是XML Web服務數據傳輸的標準,包括使用SOAP來傳輸數據。HTTP壓縮SOAP消息,然後以HTTP傳輸協議的形式傳輸。但在XML Web Service下使用HTTP-GET和HTTP-POST時,實際上是指只使用HTTP而不使用SOAP來調用XML Web Service中的方法的能力。
在HTTP中,GET和POST不是壹個協議,它們是可用於與Web服務交互的幾種方法中的兩種。然而,這兩種方法傳遞參數和數據的能力使它們成為非常適合調用XML Web服務的簡單工具。
SOAP是XML Web服務最常用的連接協議。相比HTTP,SOAP顯然更復雜,但接受性更強。SOAP是壹種基於XML的協議,它為網絡數據傳輸提供了壹種對數據進行打包和編碼的方法。任何用戶都可以使用SOAP協議與任何XML Web服務進行通信。即使這個XML Web Service不是構建在。NET平臺,比如Java,它可以使用SOAP進行數據傳輸。因此,SOAP也是獨立於語言的。
2
HTTP-GET和HTTP-POSTHTTP-GET和HTTP-POST是標準協議,它們使用HTTP(超文本傳輸協議)謂詞及其相關的請求語義來編碼和傳遞作為名稱/值對的參數。每個協議都由壹系列HTTP請求頭組成,這些請求頭和其他壹些信息壹起定義了客戶機向服務器請求什麽。當成功時,服務器將用壹系列HTTP響應頭和請求的數據進行響應。
HTTP-GET的處理特征如下:
l
向URL添加數據。
l
使用問號("?)代表URL地址的結束和數據的開始。
l
每個數據元素都以名稱/值的形式出現。
l
使用分號(";")來區分多個數據元素。
HTTP-POST的處理特征如下:
l
將數據包包含在HTTP主體中。
l
類似地,數據元素以名稱/值的形式出現。
l
但是每個數據元素占據主體的壹行。
三
SOAP協議SOAP(簡單對象訪問協議)是壹種輕量級協議,用於在分散和分布式計算環境中交換信息。SOAP有助於以獨立於平臺的方式訪問對象、服務和服務器。借助XML,它提供了HTTP所需的擴展。
SOAP協議規範由四個主要部分組成。
第壹部分:SOAP Envelop定義了壹個框架,描述了消息包含多少,誰發送消息,誰應該接受消息和處理消息,以及如何處理消息。
第二部分:SOAP編碼規則定義可選的數據編碼規則,用於表示應用程序定義的數據類型和直接圖,以及序列化非語法數據模型的統壹標準。
第三部分:SOAP RPC表示定義了壹種遠程調用風格(請求/響應)的信息交換模式。
第四部分:SOAP綁定定義了SOAP和HTTP之間的綁定以及使用底層協議的交換。
SOAP協議可以簡單理解為:SOAP=RPC+HTTP+XML,即以HTTP作為通信協議,RPC作為壹致的調用方式,XML作為數據傳輸格式,從而允許服務提供者和服務客戶通過防火墻在互聯網上進行通信和交互。