1. 程式人生 > >詳知:http協議與soap協議之間的區別

詳知:http協議與soap協議之間的區別

http是標準超文字傳輸協議。使用對引數進行編碼並將引數作為鍵值對傳遞,還使用關聯的請求語義。每個協議都包含一系列HTTP請求標頭及其他一些資訊,定義客戶端向伺服器請求哪些內容,伺服器用一系列HTTP響應標頭和所請求的資料進行響應。HTTP-GET 使用 MIME 型別application/x-www-form-urlencoded(將追加到處理請求的伺服器的 URL 中)以 URL 編碼文字的形式傳遞其引數。 URL 編碼是一種字元編碼形式,可確保傳遞的引數中包含一致性文字,例如將空格編碼為 %20,其它符號轉換為%XX,其中XX為該符號以16進製表示的ASCII(或ISOLatin-1)值。 追加的引數也稱為查詢字串;HTTP-POST引數也是 URL 編碼的,但是,鍵/值對是在實際的 HTTP 請求訊息內部傳遞的,而不是作為 URL 的一部分進行傳遞。

SOAP(Simple Object AccessProtocol)簡單物件訪問協議。它是輕型協議,用於分散的、分散式計算環境中交換資訊。SOAP有助於以獨立於平臺的方式訪問物件、服務和伺服器。它藉助於XML,提供了HTTP所需的擴充套件。

SOAP協議規範由4個主要的部分組成。

第一部分:SOAP封裝(Envelop)定義了一個的框架(描述訊息的內容多少、誰傳送、誰應當接受、處理,以及如何處理它們)。

第二部分:SOAP編碼規則(Encoding Rules)定義了可選資料編碼規則,用於表示應用程式定義的資料型別和直接圖表,以及一個用於序列化非語法資料模型統一標準。

第三部分:SOAP RPC表示(RPC Representation)定義一個遠端呼叫風格(請求/響應)資訊交換的模式。

第四部分:SOAP繫結(Binding)定義了SOAP和HTTP之間的繫結和使用底層協議的交換。

SOAP:簡單物件訪問協議,簡單物件訪問協議(SOAP)是一種輕量的、簡單的、基於 XML 的協議,它被設計成在 WEB 上交換結構化的和固化的資訊。 SOAP 可以和現存的許多因特網協議和格式結合使用,包括超文字傳輸協議( HTTP),簡單郵件傳輸協議(SMTP),多用途網際郵件擴充協議(MIME)。它還支援從訊息系統到遠端過程呼叫(RPC)等大量的應用程式。SOAP協議可以簡單地理解為:SOAP=RPC+HTTP+XML,即採用HTTP作為通訊協議,RPC(Remote Procedure Call Protocol 遠端過程呼叫協議)作為一致性的呼叫途徑,XML作為資料傳送的格式,從而允許服務提供者和服務客戶經過防火牆在Internet上進行通訊互動。

SOAP與HTTP的區別

都是底層的通訊協議,請求包的格式不同,soap包是XML格式,http純文字格式

soap 的 可以傳遞結構化的 資料,http只能傳輸純文字資料;

SOAP:簡單物件訪問協議 http是標準超文字傳輸協議

SOAP相對http(post/get)由於要進行xml解析,速度可能會有所降低。