RESTO adapta de forma natural a/de la nube de Web API, mientras que encaja de SOAP para los escenarios de computación distribuida.
El ancho de banda es el principal beneficio de REST, ya que no hay documento complejo para atravesar (es decir, XML, encabezados SOAP), que es extremadamente importante para las API web que funcionan bien. JSON es un estándar ampliamente reconocido y simple para el intercambio de datos, y es fácilmente leído por los navegadores y el código del cliente, por lo que la mayoría de las API RESTful (Yahoo es un buen ejemplo) ofrecen JSON.
no hablar resto está disponible para el objeto XMLHttpRequest, que a su vez, es crucial para AJAX-capacidad para la API de Web.
Y, por supuesto, la función de almacenamiento en caché de descanso no puede ser ignorada.Como REST se basa en HTTP, puede aprovechar muchas de las características semánticas de HTTP (y de la propia web), al utilizar encabezados en los paquetes HTTP (caducar) para habilitar el almacenamiento en caché por parte del navegador. Sin mencionar cosas como la compresión gzip para aumentar la eficiencia. En cuanto a rendimiento, REST realmente lo clava sobre SOAP.
En cuanto a SOAP, SOAP satisface las operaciones con estado. El estándar WS * (Seguridad, Transacciones, etc.) maneja este tipo de plomería, que es bastante común en escenarios distribuidos. Se puede hacer con REST, claro, pero entonces realmente no sería REST. SOAP es realmente bueno para definir contratos operativos entre el cliente y el servidor, lo cual es crucial en los escenarios distribuidos.
Así que mi opinión (y toda la cosa SOAP vs REST es muy dogmática), use SOAP para escenarios de computación distribuida, use REST para APIs Web.
Posible duplicado: http://stackoverflow.com/questions/76595/soap-orrest – michid
¿Tiene alguna idea? Tienes 4 muy buenas respuestas. – RPM1984
@ RPM1984: Sí, supongo que iré con REST porque tiene URL distintas para diferentes servicios, lo que lo hace muy débilmente acoplado y también tiene un directorio como estructura de url (a diferencia de SOAP que tiene "www.somesite.com?query=something") que lo hace amigable para los motores de búsqueda. :) – Anand