¿Qué son WSDL, SOAP y REST?


¿Qué es WSDL? ¿Cómo se relaciona con SOAP ? ¿Dónde encaja REST en todo eso?

Author: Hristiyan Dodov, 2010-09-22

10 answers

Un WSDL es un documento XML que describe un servicio web. En realidad significa Lenguaje de Descripción de Servicios Web.

SOAP es un protocolo basado en XML que permite intercambiar información sobre un protocolo en particular (puede ser HTTP o SMTP, por ejemplo) entre aplicaciones. Es sinónimo de Simple Object Access Protocol y utiliza XML para su formato de mensajería para transmitir la información.

REST es un estilo arquitectónico de sistemas en red y significa Transferencia de Estado Representacional. No es un estándar en sí, pero utiliza estándares como HTTP, URL, XML, etc.

 132
Author: keith_c,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-05 10:14:49

Ejemplo: En términos simples si usted tiene un servicio web de calculadora.

WSDL: WSDL indica las funciones que se pueden implementar o exponer al cliente. Por ejemplo: agregar, eliminar, restar, etc.

SOAP: Donde al usar SOAP realmente realizas acciones como doDelete(), doSubtract(), doAdd(). Así que el JABÓN y el WSDL son manzanas y naranjas. No deberíamos compararlos. Ambos tienen su propia funcionalidad diferente.

Por qué usamos SOAP y WSDL: For platform intercambio independiente de datos.

EDITAR: En una vida normal del día a día ejemplo:

WSDL: Cuando vamos a un restaurante vemos los Elementos del Menú, esos son los WSDL.

Clases Proxy: Ahora, después de ver los Elementos del Menú, nos decidimos (Procesamos nuestra mente sobre qué ordenar): Así que, básicamente, hacemos clases Proxy basadas en Documentos WSDL.

SOAP: Luego, cuando realmente ordenamos la comida basada en el Menú: Significa que usamos clases proxy para llamar a los métodos de servicio que se realiza utilizando SOAP. :)

 46
Author: Unbreakable,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-16 02:15:19

Cada vez que alguien menciona SOAP/WSDL, pienso en objetos y clases definidos en xml...

"Usas SOAP de la misma manera que lo harías con cualquier clase PHP. Sin embargo, en este caso la clase no existe en el sistema de archivos de aplicaciones locales, sino en un sitio remoto al que se accede a través de http." ... "Si pensamos en usar un servicio SOAP como otra clase PHP, entonces el documento WSDL es una lista de todos los métodos y propiedades de clase disponibles. "

Http://www.doublehops.com/2009/07/07/quick-tutorial-on-getting-started-with-soap-in-php/comment-page-1/

..y cada vez que alguien habla de REST pienso en los comandos HTTP (métodos de solicitud) como POST, GET y DELETE

 31
Author: angelcool.net,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-08-01 22:09:11

SOAP significa Simple (sic) Object Access Protocol. Estaba destinado a ser una forma de hacer Llamadas de Procedimiento Remoto a objetos remotos mediante el envío de XML a través de HTTP.

WSDL es el Lenguaje de Descripción del Servicio Web. Una solicitud que termina en '.wsdl ' a un punto final dará lugar a un mensaje XML que describe la solicitud y la respuesta que un uso puede esperar. Descibe el contrato entre servicio y cliente.

REST usa HTTP para enviar mensajes a los servicios.

SOAP es una especificación, REST es una estilo.

 10
Author: duffymo,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-21 21:43:22

SOAP -> SOAP(Simple object access protocal) es el protocolo de nivel de aplicación creado para la interacción máquina a máquina. El protocolo define las reglas estándar. Todas las partes que utilizan el protocolo en particular deben adherirse a las normas del protocolo. Al igual que TCP, se desenrolla en la capa de transporte, el protocolo SOAP será entendido por la capa de aplicación (cualquier aplicación que soporte SOAP - Axis2,. net).

El mensaje WSDL -> SOAP consiste en SoapEnevelope->SoapHeader y SoapBody. Se ¿no define cuál sería el formato del mensaje? ¿cuáles son todos los transportes (HTTP, JMS) que soporta? sin esta información, es difícil para cualquier cliente que quiera consumir el servicio web en particular para construir el mensaje SOAP. Incluso si lo hacen, no estarán seguros, funcionará todo el tiempo. WSDL es el rescate. WSDL (Web Service description Language) define las operaciones, formatos de mensaje y detalles de transporte para el mensaje SOAP.

REST - > REST (Representational state transfer) se basa en transporte. A diferencia de SOAP, que se dirige a las acciones, el RESTO se refiere más a los recursos. REST localiza los recursos usando URL (ejemplo-http: / / {serverAddress} / employees / employeeNumber / 12345) y depende del protocolo de transporte (con HTTP-GET, POST, PUT, DELETE,...) para las acciones a realizar sobre los recursos. El servicio REST localiza el recurso en función de la URL y realiza la acción en función del verbo transport action. Es más de estilo arquitectónico y convenciones basadas.

 10
Author: Raj kannan Iyyappan,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-10-11 04:33:53

No vas a "simplemente" entender algo complejo.

WSDL es un lenguaje basado en XML para describir un servicio web. Describe los mensajes, las operaciones y la información de transporte de red utilizada por el servicio. Estos servicios web suelen utilizar SOAP, pero pueden utilizar otros protocolos.

Un WSDL es legible por un programa, por lo que puede ser utilizado para generar todo, o parte del código de cliente necesario para llamar al servicio web. Esto es lo que significa llamar servicios web basados en SOAP "sí mismo".

REST no está relacionado en absoluto con WSDL.

 9
Author: John Saunders,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-21 21:43:45

Wikipedia dice que "El Lenguaje de Descripción de Servicios Web es un lenguaje basado en XML que proporciona un modelo para describir servicios Web". Dicho de otra manera, WSDL es un servicio web, como javadoc es una biblioteca java.

Lo realmente bueno de WSDL, sin embargo, es que el software puede generar un cliente y un servidor usando WSDL.

 5
Author: Michael Burrows,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-21 21:53:55

Algunas explicaciones claras (para SOAP y WSDL) también se pueden encontrar aquí.

Diferencia entre un mensaje SOAP y un WSDL?

 3
Author: namski,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:34:53

REST es liviano en términos de codificación, mucho más útil para dispositivos livianos, es decir, API no estrictas.

REST es independiente del formato. XML, HTML, JSON todas las opciones están disponibles.

REST proporciona habilidades para la transferencia de mensajes en 2 puntos (no es sorprendente ya que REST significa Transferencia de Estado REpresentacional) donde la interacción WSDL/SOAP es la interacción de mensajes de múltiples puntos.

REST no requiere una nueva extensión para los mensajes XML, donde en WSDL / SOAP esta es la caso.

WSDL/SOAP utiliza múltiples protocolos de transporte, REST solo se basa en HTTP. Por lo tanto, WSDL/SOAP se puede usar como una forma RESTful, sin embargo, las solicitudes simples pueden ser demasiado complicadas/pesadas.

Una analogía simple: EL DESCANSO es como un motoboy entrega su comida fácil y rápida. XML extendido WSDL / SOAP más como la entrega de UPS, cosas más estructuradas y serias, pero viene con un costo.

 2
Author: Bedi Egilmez,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-16 15:44:24

Un documento WSDL describe un servicio web. Especifica la ubicación del servicio y los métodos del servicio que utilizan estos elementos principales: tipos de datos usando en webservice elementos de datos para cada operación describir las operaciones que se pueden realizar y los mensajes envueltos

SOAP (Simple Object Access Protocol) es un protocolo de mensajería que permite a los programas que se ejecutan en sistemas operativos dispares comunicarse mediante http y xml.

 0
Author: Farzaneh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-25 07:34:02