REST是一種體系結構,SOAP是一種協議。
這是第一個問題。
您可以在REST應用程序中發送SOAP信封。
SOAP本身實際上是非常基本和簡單的,正是WSS-*標準使它變得非常復雜。
如果您的使用者是其他應用程序和其他服務器,那么現在對SOAP協議的支持非常多,移動數據的基本原理就是在現代IDE中點擊鼠標。
如果您的消費者更可能是RIA或Ajax客戶端,那么您可能需要比SOAP更簡單的東西,并且更適合客戶機(尤其是JSON)。
通過HTTP發送的JSON數據包不一定是REST架構,它只是發送給URL的消息。所有這些都是完全可行的,但REST成語有一些關鍵的組成部分。然而,這兩者很容易混淆。但是,僅僅因為您正在談論HTTP請求,并不一定意味著您有一個REST體系結構。您可以使用沒有HTTP的REST應用程序(注意,這是很少見的)。
因此,如果您有使用SOAP的服務器和使用者,SOAP和WSS堆??梢院芎玫貫槟铡H绻谧龈嗟呐R時工作,并且希望更好地與Web瀏覽器交互,那么一些更輕的HTTP協議也可以很好地工作。