亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

webservice調用方式http和soap的區別

webservice調用方式http和soap的區別

九州編程 2019-03-29 19:18:04
webservice調用方式http和soap的區別
查看完整描述

2 回答

?
ibeautiful

TA貢獻1993條經驗 獲得超6個贊

SOAP簡單的理解,就是這樣的一個開放協議SOAP=RPC+HTTP+XML:采用HTTP作為底層通訊協議;RPC作為一致性的調用途徑,XML作為數據傳送的格式,允許服務提供者和服務客戶經過防火墻在INTERNET進行通訊交互。RPC的描敘可能不大準確,因為SOAP一開始構思就是要實現平臺與環境的無關性和獨立性,每一個通過網絡的遠程調用都可以通過SOAP封裝起來,包括DCE(Distributed Computing Environment ) RPC CALLS,COM/DCOM CALLS, CORBA CALLS, JAVA CALLS,etc。
SOAP 使用 HTTP 傳送 XML,盡管HTTP 不是有效率的通訊協議,而且 XML 還需要額外的文件解析(parse),兩者使得交易的速度大大低于其它方案。但是XML 是一個開放、健全、有語義的訊息機制,而 HTTP 是一個廣泛又能避免許多關于防火墻的問題,從而使SOAP得到了廣泛的應用。但是如果效率對你來說很重要,那么你應該多考慮其它的方式,而不要用 SOAP。
為了更好的理解SOAP,HTTP,XML如何工作的,不妨先考慮一下COM/DCOM的運行機制,DCOM處理網絡協議的低層次的細節問題,如PROXY/STUB間的通訊,生命周期的管理,對象的標識。在客戶端與服務器端進行交互的時候,DCOM采用NDR(Network Data Representation)作為數據表示,它是低層次的與平臺無關的數據表現形式。
Web service一般就是用SOAP協議通過HTTP來調用它,其實他就是一個WSDL文檔,客戶都可以閱讀WSDL文檔來用這個Web service??蛻舾鶕SDL描述文檔,會生成一個SOAP請求消息。Web service都是放在Web服務器 (如IIS) 后面的,客戶生成的SOAP請求會被嵌入在一個HTTP POST請求中,發送到Web服務器來。Web服務器再把這些請求轉發給Web service請求處理器。請求處理器的作用在于,解析收到的SOAP請求,調用Web service,然后再生成相應的SOAP應答。Web服務器得到SOAP應答后,會再通過HTTP應答的方式把它送回到客戶端。
個人以為就把webservice當成是Http這種請求和響應方式就可以處理大部分問題了。
webservice 的調用有3種方式
1. httpget
2. httppost
3. httpsoap
soap 的優點是 可以傳遞結構化的 數據,而前兩種不行。
btw, soap 最終也是使用 HTTP 傳送 XML
HTTP就是郵局的協議,他們規定了你的信封要怎么寫,要貼多少郵票等。。。。
SOAP就是你們之間交流的協議,負責把你所需要表達的意思寫在信紙上,同時也負責讓對方能夠看得懂你的信。
SOAP (Simple Object Access Protocol) 顧名思義,是一個嚴格定義的信息交換協議,用于在Web Service中把遠程調用和返回封裝成機器可讀的格式化數據。事實上SOAP數據使用XML數據格式,定義了一整套復雜的標簽,以描述調用的遠程過程、參數、返回值和出錯信息等等。而且隨著需要的增長,又不得增加協議以支持安全性,這使SOAP變得異常龐大,背離了簡單的初衷。另一方面,各個服務器都可以基于這個協議推出自己的API,即使它們提供的服務及其相似,定義的API也不盡相同,這又導致了WSDL的誕生。WSDL (Web Service Description Language) 也遵循XML格式,用來描述哪個服務器提供什么服務,怎樣找到它,以及該服務使用怎樣的接口規范,簡言之,服務發現?,F在,使用Web Service的過程變成,獲得該服務的WSDL描述,根據WSDL構造一條格式化的SOAP請求發送給服務器,然后接收一條同樣SOAP格式的應答,最后根據先前的WSDL解碼數據。絕大多數情況下,請求和應答使用HTTP協議傳輸,那么發送請求就使用HTTP的POST方法。



查看完整回答
反對 回復 2019-03-31
  • 2 回答
  • 0 關注
  • 767 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號