Differenza chiave: SOAP sta per Simple Object Access Protocol. I servizi Web SOAP sono basati sulle specifiche SOAP e ws- *. Il termine Representational State Transfer (REST) è stato coniato da Roy Fielding. Si riferisce all'interfaccia di un'applicazione Web implementata utilizzando i concetti e i principi di HTTP e REST.
Il servizio Web può essere definito in molti modi. Tuttavia, per capirlo, è possibile definirlo come un metodo utilizzato per la comunicazione tra applicazioni o sistemi. Può essere descritto come un'entità software agonistica basata su standard e linguaggio che è in grado di accettare richieste formattate da altri tipi di entità per generare risposte specifiche dell'applicazione. I servizi Web sono componenti dell'applicazione che comunicano utilizzando protocolli aperti. I servizi Web utilizzano un sistema di messaggistica HTTP e XML standardizzato e pertanto sono indipendenti dalla piattaforma e indipendenti dalla lingua.
I servizi Web sono classificati in due tipi: Simple Object Access Protocol (SOAP) e Representational State Transfer (REST).
I servizi Web SOAP sono basati sulle specifiche SOAP e ws- *. Fa uso di WS-Trust per acquisire i token di sicurezza. È basato sugli standard. Questi servizi Web sono orientati agli oggetti. SOAP è fondamentalmente una specifica del protocollo che viene utilizzata per scambiare le informazioni strutturate durante l'implementazione dei servizi web. Impiega XML per il formato del messaggio. SOAP è supportato dall'organizzazione di interoperabilità dei servizi Web (WS-I). SOAP è stato in grado di occuparsi di aspetti come sicurezza e indirizzamento, attraverso la sua implementazione interna del protocollo SOAP.
Confronto tra servizi Web REST e SOAP:
Servizi Web REST | Servizi Web SOAP | |
Abbreviazione | Trasferimento dello stato di rappresentanza | Protocollo di accesso agli oggetti semplice |
Standard | Nessun standard | Dichiarativo (viene utilizzato WSDL standard) |
Supporto | Numerosi tipi di contenuti | Solo XML |
Affidabilità | Applicazione specifica | WS: messaggistica affidabile |
caching | Le operazioni di acquisizione possono essere memorizzate nella cache se lo si desidera. | No |
Dimensione del messaggio | leggero | Comparativamente pesante |
Implementazione | Semplice | Complesso |
Aree di applicazione | Larghezza di banda e risorse limitate Operazioni totalmente apolidi Situazioni di cache | Elaborazione asincrona e invocazione Contratti formali Operazioni stateful |
Vista dello sviluppatore | Orientato alle risorse | Orientato agli oggetti |
Supporto del protocollo di trasporto | HTTP | HTTP, SMTP, JMS |