Si te encuentras con algo que no entiendes puedes dejarlo en los comentarios y te ayudaremos tan rápido como podamos.
Solución:
Los dos protocolos tienen usos muy diferentes en el mundo real.
SOAP (usando WSDL) es un estándar XML pesado que se centra en el paso de documentos. La ventaja de esto es que sus solicitudes y respuestas pueden estar muy bien estructuradas e incluso pueden usar una DTD. La desventaja es que es XML y es muy detallado. Sin embargo, esto es bueno si dos partes necesitan tener un contrato estricto (por ejemplo, para la comunicación interbancaria). SOAP también le permite superponer cosas como WS-Security en sus documentos. SOAP generalmente es independiente del transporte, lo que significa que no necesariamente necesita usar HTTP.
REST es muy liviano y se basa en el estándar HTTP para hacer su trabajo. Es genial tener un servicio web útil listo y funcionando rápidamente. Si no necesita una definición de API estricta, este es el camino a seguir. La mayoría de los servicios web entran en esta categoría. Puede crear una versión de su API para que las actualizaciones de la API no la rompan para las personas que usan versiones anteriores (siempre que especifiquen una versión). REST esencialmente requiere HTTP y es independiente del formato (lo que significa que puede usar XML, JSON, HTML, lo que sea).
Generalmente uso REST, porque no necesito características sofisticadas de WS-*. Sin embargo, SOAP es bueno si desea que las computadoras entiendan su servicio web usando un WSDL. Las especificaciones REST generalmente solo son legibles por humanos.
Los siguientes enlaces proporcionan información útil sobre WSDL vs REST, incluidos los pros y los contras.
Una pareja de key los puntos son que
1) SOAP se diseñó para un entorno informático distribuido, mientras que REST se diseñó para un entorno punto a punto.
2) WADL se puede utilizar para definir la interfaz para los servicios REST.
http://www.ajaxonomy.com/2008/xml/web-services-part-1-soap-vs-rest
http://ajaxonomy.com/2008/xml/web-services-part-2-wsdl-and-wadl
Con respecto a WSDL (que significa “SOAP”) como “pesado”. ¿Cuestiones pesadas cómo? Si el conjunto de herramientas está haciendo todo el “trabajo pesado” por usted, ¿por qué importa?
Nunca he necesitado consumir una API REST complicada. Cuando lo haga, espero desear un WSDL, que mis herramientas con gusto convertirán en un conjunto de clases de proxy, por lo que puedo simplemente llamar a lo que parecen ser métodos. En cambio, sospecho que para consumir una API basada en REST no trivial, será necesario escribir a mano una cantidad sustancial de código “ligero”.
Incluso cuando todo esté hecho, aún habrá traducido la documentación legible por humanos en código, con todo el riesgo concomitante de que los humanos la lean mal. Dado que WSDL es una descripción legible por máquina del servicio, es mucho más difícil “leerlo mal”.
Solo una nota: desde esta publicación, tener Tuve la oportunidad de trabajar con un servicio REST moderadamente complicado. De hecho, deseaba un WSDL o el equivalente y, de hecho, tuve que escribir mucho código a mano. De hecho, una parte sustancial del tiempo de desarrollo se dedicó a eliminar la duplicación de código de todo el código que llamaba a diferentes operaciones de servicio “a mano”.
Comentarios y calificaciones
Recuerda que te damos el privilegio comentar si te ayudó.