Witam,
Temat jest dość oklepany, ale nie oczywisty. Jak wiadomo SOAP to starszy protokół, a REST to mniej ścisły wzorzec architektoniczny służący integracji systemów (najczęściej z użyciem JSON). Oba rozwiązania łączy wykorzystanie protokołu HTTP. SOAP wymusza wykorzystanie XML do opisu koport (standard WSDL). Jedna z zalet jest bardzo ścisły opis, co bardzo ułatwia tworzenie klientów (jest to raczej łatwiejsze niż w REST: wystarczy podać WSDL i klient wygeneruje się sam).
SOAP standardyzuje bardziej wyrafinowane metody security np. WS-SECURITY (jednak znacznie częściej podobnie jak w REST stosuje się prostsze rozwiązania, czykl klasyka: basic authentication + SSL). Lepiej nadaje się do integracji z legacy systemami i dominuje w ciężkim enterprise (np. integracji z SAPem). Największą wadą jest ciężki rozmiar kopert, w których metadane bardzo często przewyższają zawartość własnych danych (dlatego raczej nie nadaje się do lekkich usług oraz do usług w otwartym internecie, gdzie znaczenie ma skalowalność (tu często nawet REST z powodu nagłówków HTTP bywa za ciężki) ). Przez wykorzystanie XML marnuje sporo pasma, gdyż przesyła więcej danych niż jest to potrzebne.
Moje pytania są następujące:
- W jakich typowych przypadkach SOAP lepiej nadaje się do wykorzystania niż REST w 2015 roku? Zależy mi na podaniu kilku przypadków użycia, w których niemodna i przestarzała technologia (jaką dzisiaj jest SOAP) sprawdza się lepiej niż alternatywy. W szczególności interesują mnie przypadki użycia wzięta z życia.
Pozdrawiam,