web-services
rest
soap
wsdl
javaguy
fonte
fonte
Respostas:
Um WSDL é um documento XML que descreve um serviço da web. Na verdade, significa o idioma dos serviços da Web.
SOAP é um protocolo baseado em XML que permite trocar informações sobre um protocolo específico (pode ser HTTP ou SMTP, por exemplo) entre aplicativos. Significa Protocolo Simples de Acesso a Objetos e usa XML em seu formato de mensagens para retransmitir as informações.
REST é um estilo arquitetônico de sistemas em rede e significa Representational State Transfer. Não é um padrão em si, mas usa padrões como HTTP, URL, XML etc.
fonte
"A WSDL is an XML document that describes a web service. It actually stands for Web Services Definition Language."
Isso realmente não explica o que é ...The current version of WSDL is WSDL 2.0. The meaning of the acronym has changed from version 1.1 where the "D" stood for "Definition".
Exemplo: Em termos simples, se você tiver um serviço web de calculadora.
WSDL: o WSDL informa sobre as funções que você pode implementar ou expor ao cliente. Por exemplo: adicione, exclua, subtraia e assim por diante.
SOAP: onde, ao usar o SOAP, você realmente executa ações como doDelete (), doSubtract (), doAdd (). Então, o SOAP e o WSDL são maçãs e laranjas. Não devemos compará-los. Ambos têm suas próprias funcionalidades diferentes.
Por que usamos SOAP e WSDL: para troca de dados independente da plataforma.
EDIT: Em um exemplo normal da vida cotidiana:
WSDL: Quando vamos a um restaurante, vemos os itens de menu, esses são os WSDLs.
Classes de proxy: Agora, depois de ver os itens de menu, decidimos (processar nossa mente sobre o que pedir): Então, basicamente fazemos classes de proxy com base no documento WSDL.
SOAP: Então, quando realmente pedimos a comida com base no menu: significa que usamos classes proxy para chamar os métodos de serviço que são feitos usando o SOAP. :)
fonte
Toda vez que alguém menciona SOAP / WSDL, penso em objetos e classes definidos em xml ...
..e sempre que alguém fala sobre REST, penso nos comandos do HTTP (métodos de solicitação) como POST, GET e DELETE
fonte
SOAP -> SOAP (protocal de acesso a objetos simples) é o protocal no nível do aplicativo criado para a interação máquina a máquina. Protocolo define regras padrão. Todas as partes que estão usando o protocolo específico devem aderir às regras do protocolo. Como o TCP, ele se desenrola na camada de transporte. O protocolo SOAP será entendido pela camada Aplicativo (qualquer aplicativo que suporte SOAP - Axis2, .Net).
A mensagem WSDL -> SOAP consiste em SoapEnevelope-> SoapHeader e SoapBody. Ele não define o que seria o formato da mensagem? Quais são todos os transportes (HTTP, JMS) suportados? sem essas informações, é difícil para qualquer cliente que queira consumir o serviço da Web específico criar a mensagem SOAP. Mesmo se o fizerem, não terão certeza, funcionará o tempo todo. WSDL é o resgate. O WSDL (Web Service description Language) define as operações, formatos de mensagem e detalhes de transporte para a mensagem SOAP.
REST -> REST (transferência de estado representacional) é baseado no transporte. Diferentemente do SOAP, que tem como alvo as ações, o REST se preocupa mais com os recursos. O REST localiza os recursos usando a URL (exemplo -http: // {serverAddress} / employee / employeeNumber / 12345) e depende do protocolo de transporte (com HTTP - GET, POST, PUT, DELETE, ...) para as ações a ser executado nos recursos. O serviço REST localiza o recurso com base na URL e executa a ação com base no verbo de ação de transporte. É mais um estilo arquitetônico e é baseado em convenções.
fonte
Você não vai "simplesmente" entender algo complexo.
WSDL é uma linguagem baseada em XML para descrever um serviço da web. Ele descreve as mensagens, operações e informações de transporte de rede usadas pelo serviço. Esses serviços da Web geralmente usam SOAP, mas podem usar outros protocolos.
Um WSDL é legível por um programa e, portanto, pode ser usado para gerar todo ou parte do código do cliente necessário para chamar o serviço da web. É isso que significa chamar os serviços da web baseados em SOAP "de auto-descrição".
O REST não está relacionado ao WSDL.
fonte
SOAP significa Simple (sic) Object Access Protocol. O objetivo era ser uma maneira de fazer chamadas de procedimento remoto a objetos remotos enviando XML por HTTP.
WSDL é o idioma da descrição do serviço da web. Uma solicitação que termina em '.wsdl' em um nó de extremidade resultará em uma mensagem XML descrevendo a solicitação e a resposta que um uso pode esperar. Descreve o contrato entre serviço e cliente.
O REST usa HTTP para enviar mensagens aos serviços.
SOAP é uma especificação, REST é um estilo.
fonte
A Wikipedia diz que "a linguagem de descrição de serviços da Web é uma linguagem baseada em XML que fornece um modelo para descrever serviços da Web". Dito de outra maneira, o WSDL é para um serviço da web, como o javadoc é para uma biblioteca java.
O mais interessante sobre o WSDL, porém, é que o software pode gerar um cliente e servidor usando o WSDL.
fonte
O REST é leve em termos de codificação, muito mais útil para dispositivos leves, ou seja, APIs não rígidas.
O REST é independente do formato. XML, HTML, JSON todas as opções estão disponíveis.
O REST fornece recursos para transferência de mensagens de 2 pontos (não é surpreendente, pois REST significa REpresentational State Transfer), onde a interação WSDL / SOAP é uma interação de mensagens de vários pontos.
O REST não requer uma nova extensão para mensagens XML, onde no WSDL / SOAP este é o caso.
O WSDL / SOAP usa vários protocolos de transporte, o REST depende apenas de HTTP. Portanto, o WSDL / SOAP pode ser usado como uma maneira RESTful, no entanto, solicitações simples podem ser excessivamente complicadas / pesadas.
Uma analogia simples: o REST é como um motoboy entrega sua comida de maneira fácil e rápida. O WSDL / SOAP estendido por XML é mais parecido com a entrega da UPS, coisas mais estruturadas e sérias, mas tem um custo.
fonte
Algumas explicações claras (para SOAP e WSDL) também podem ser encontradas aqui.
Diferença entre uma mensagem SOAP e um WSDL?
fonte
Um documento WSDL descreve um serviço da web. Ele especifica a localização do serviço e os métodos do serviço usando esses elementos principais: tipos de dados que usam elementos de dados no serviço da web para cada operação descrevem as operações que podem ser executadas e as mensagens envolvidas
SOAP (Simple Object Access Protocol) é um protocolo de mensagens que permite que programas executados em sistemas operacionais diferentes se comuniquem usando http e xml.
fonte