Apidog

All-in-one Collaborative API Development Platform

Design de API

Documentação de API

Depuração de API

Mock de API

Testes Automatizados de API

Inscreva-se gratuitamente
Home / Ponto de vista / Chamando APIs SOAP usando cURLs (Com Imagem)

Chamando APIs SOAP usando cURLs (Com Imagem)

Os comandos cURL permitem que os desenvolvedores criem, enviem, testem e depurem solicitações e comunicações SOAP com facilidade. Neste artigo, mostrarei como testar um serviço web SOAP usando cURL de forma simples.

A frase "SOAP cURLs" compreende duas tecnologias populares que você pode ter ouvido antes. Antes de mais nada, este artigo discute as tecnologias e suas capacidades.

💡
Apidog, uma plataforma de desenvolvimento focada em design de API, proporciona aos seus usuários inúmeras modificações e especificações para todo o ciclo de vida de uma API.

Se você precisa de uma plataforma de API para construir, simular, depurar ou documentar APIs, Apidog é uma escolha ideal. Tudo o que você precisa fazer é clicar no botão abaixo. 👇 👇 👇 

Termos Básicos sobre SOAP e cURLs

Os termos "SOAP" e "cURL" referem-se a uma tecnologia única cada um.

  • SOAP: SOAP (Protocolo de Acesso a Objetos Simples) é um protocolo de mensagens usado principalmente para trocar informações estruturadas entre duas aplicações ou sistemas.

    Ele desempenha um papel importante na indústria de serviços web devido à sua capacidade de facilitar a troca de dados e comunicação entre diferentes componentes de software.

    SOAP é um protocolo altamente estruturado que utiliza o formato XML, utilizado principalmente por aplicações empresariais ou sistemas legados. Com isso mencionado, você pode ter observado outros protocolos se tornando mais populares, como o estilo arquitetônico REST, muito discutido.

    Os serviços web SOAP geralmente também vêm na forma de arquivos WSDL.
  • cURL: cURL significa "Cliente para URL". cURL é um software livre e de código aberto que fornece duas funcionalidades principais: uma ferramenta de linha de comando curl e uma biblioteca libcurl.

    A ferramenta de linha de comando curl permite transferências de dados usando vários protocolos de rede como HTTP, HTTPS e muitos outros tipos diretamente do seu terminal. Existem muitas utilizações do curl. Para citar algumas, você pode baixar arquivos, enviar dados e recuperar o conteúdo de uma página web ou resposta do servidor.

    Por outro lado, a biblioteca libcurl atua como a funcionalidade principal para transferências de dados. libcurl pode ser integrada em várias linguagens de programação populares, como C, C++, Python e PHP. Com libcurl, os desenvolvedores podem aproveitar o desempenho do cURL com aplicações para tarefas como automatizar downloads e uploads de arquivos, assim como construir ferramentas ou aplicações personalizadas para interagir com serviços web.

Quando os termos são combinados, "SOAP cURLs" refere-se ao uso das funcionalidades do cURL para interagir especificamente com serviços web baseados em SOAP.

Análise de Como SOAP cURLs Funcionam

1. Defina a mensagem SOAP:

  • Primeiramente, uma mensagem de solicitação SOAP específica é necessária. Isso envolve determinar a operação que você deseja chamar no serviço web e os dados que você deseja enviar, tudo no formato XML.
  • Você pode encontrar várias ferramentas e recursos disponíveis para ajudar a definir a mensagem SOAP, como o arquivo WSDL (Linguagem de Descrição de Serviços Web) fornecido pelo serviço web ou ferramentas online para gerar mensagens SOAP.

2. Construa o comando cURL:

  • Em seguida, construa um comando cURL especificando os detalhes da solicitação HTTP que carrega a mensagem SOAP. Isso envolve usar várias opções do cURL para definir:
    URL: O endereço do ponto de extremidade do serviço web que você deseja alcançar.
    Método: O método HTTP é normalmente definido como "POST", uma vez que as mensagens SOAP geralmente são enviadas usando o método POST.
    Headers: Headers específicos para comunicação SOAP, como "Content-Type: text/xml; charset=utf-8" são necessários para indicar o formato da mensagem e a codificação de caracteres.
  • Dados: O conteúdo real da mensagem SOAP será incluído no corpo da solicitação usando a opção "-d" com a string da mensagem ou um arquivo contendo a mensagem.

3. Enviando a solicitação e recebendo uma resposta:

  • Uma vez que você tenha o comando cURL completo, pode executá-lo no seu terminal. Isso enviará a solicitação HTTP elaborada contendo a mensagem SOAP para o serviço web.
  • O serviço web processará a solicitação e retornará uma resposta, tipicamente no formato XML.

4. Processamento da resposta:

  • Você pode analisar a resposta XML para extrair as informações relevantes retornadas pelo serviço web. Isso pode envolver o uso de ferramentas ou bibliotecas dependendo da linguagem de programação utilizada.

Como Chamar a API SOAP Usando cURL

Passo 1: Primeiro, você precisará preparar sua mensagem SOAP. Caso esta seja sua primeira vez criando uma mensagem SOAP, você pode se referir ao exemplo de código abaixo - no entanto, você precisará modificá-lo para garantir que atenda às suas necessidades.

Exemplo de mensagem SOAP:

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://www.example.com/webservice">
   <soapenv:Header/>
   <soapenv:Body>
      <ws:getGreeting>
         <ws:name>John Doe</ws:name>
      </ws:getGreeting>
   </soapenv:Body>
</soapenv:Envelope>
Você consegue adivinhar o que a mensagem está solicitando do serviço web?

Passo 2: Prepare seu comando cURL no seu terminal. Semelhante ao passo acima, você pode dar uma olhada no exemplo de código.

Exemplo de comando cURL:

curl -X POST \
-H "Content-Type: text/xml; charset=utf-8" \
-H "SOAPAction: http://www.example.com/webservice/getGreeting" \
-d @soap_request.xml "https://dummy.webservice.com/path/to/service"

Explicação do comando cURL:

  • -X POST: Especifica o método da solicitação HTTP como POST.
  • -H "Content-Type: text/xml; charset=utf-8" define o cabeçalho de tipo de conteúdo indicando dados XML com codificação UTF-8.
  • -H "SOAPAction: http://www.example.com/webservice/getGreeting" define o cabeçalho SOAPAction especificando a operação alvo.
  • -d @soap_request.xml lê o conteúdo da mensagem SOAP de um arquivo chamado "soap_request.xml".
  • "https://dummy.webservice.com/path/to/service" deve ser substituído pela URL real do ponto de extremidade do serviço web.

Aplicações da Vida Real de SOAP cURLs

1. Integração de sistemas legados: SOAP era frequentemente usado em aplicações empresariais mais antigas. Se você precisa interagir com esses sistemas legados que não foram migrados para protocolos mais novos, o cURL pode fornecer uma maneira de elaborar manualmente e enviar solicitações SOAP para a troca de dados.

2. Testando e depurando serviços web SOAP: Desenvolvedores podem usar o cURL para enviar diretamente solicitações SOAP específicas e analisar as respostas para solucionar problemas com serviços web SOAP. Isso permite um controle granular sobre a solicitação e ajuda a isolar problemas potenciais.

3. Scripts personalizados e automação: O cURL pode ser integrado em scripts e programas para automatizar tarefas que envolvem comunicação SOAP. Isso pode ser útil em cenários como buscar periodicamente dados de um serviço SOAP ou acionar ações específicas com base em mensagens SOAP recebidas.

Apidog - Facilita o Teste de SOAP

Apidog é uma plataforma de desenvolvimento de API que oferece inúmeras funcionalidades para personalizar APIs ao seu gosto. Se você está planejando criar uma nova API do zero ou importar uma API pessoal na qual você tem trabalhado há algum tempo, o Apidog suporta ambas as escolhas.

api design apidog test build
Funcionalidades do Apidog que os usuários podem aproveitar
botão

Apidog suporta a importação de arquivos WSDL para que você possa visualizar serviços web baseados em SOAP. Em outra nota, você também pode gerar comandos cURL usando a geração de código de linguagem do cliente do Apidog, portanto, você não precisa ficar adivinhando se está certo ou errado!

Importando Arquivos WSDL para Visualizar Serviços Web Baseados em SOAP no Apidog

import wsdl file apidog
Importando Arquivo WSDL no Apidog

Primeiramente, pressione o botão Configurações encontrado no lado esquerdo da barra de ferramentas vertical. Em seguida, localize Importar Dados na seção Gerenciamento de Dados. Por último, escolha WSDL para importar arquivos WSDL para o Apidog.

Editando Arquivos WSDL no Apidog

edit wsdl file apidog
Editando um Arquivo WSDL com Apidog

Se o arquivo WSDL foi importado com sucesso, você encontrará seu arquivo WSDL à esquerda, como mostrado na imagem indicada pela seta 1. Você pode então clicar nas setas numeradas para começar a editar.

Uma vez que você tenha seu arquivo WSDL importado e depurado, pode começar a testá-lo no Apidog para verificar mais erros. Se você ainda estiver em dúvida se seu arquivo WSDL está certo ou errado, confira exemplos de arquivos WSDL para mais detalhes.

Importando cURL para Apidog

Apidog suporta a importação de códigos de linha de comando cURL para aqueles que já os têm prontos.

start curl import apidog
Iniciando a importação cURL no Apidog

Na seção APIs, encontre um botão roxo + encontrado no canto superior esquerdo da janela do Apidog. Em seguida, selecione Importar cURL. Se você não conseguir encontrar o botão mencionado, pode usar o atalho Ctrl + I.

paste curl command apidog
Cole seu comando cURL no campo vazio

Aqui, você pode colar seu comando cURL. Uma vez feito isso, pressione Enter no seu teclado ou o botão OK para visualizar seu comando cURL.

curl code body edit apidog
Decida se precisa modificar mais alguma coisa

Se for bem-sucedido, você poderá visualizar o comando cURL como parte do corpo JSON, como mostrado na imagem acima. Aqui, você pode fazer ajustes ou alterações sempre que necessário.

Geração de Código de Comando cURL Usando Apidog

curl comannd code generation apidog
Gerando código de linha de comando cURL

Para iniciar a geração de código cURL, localize e pressione o botão </> encontrado no canto superior direito da janela do Apidog. Em seguida, selecione Gerar Código do Cliente.

curl code generate apidog
Selecione o código de linha de comando cURL usando Apidog

Uma janela pop-up solicitará que você selecione qual código de cliente gerar. Aqui, selecione Shell e cURL. Uma vez feito isso, você pode copiar o código e colá-lo no seu terminal. No entanto, certifique-se de modificá-lo para atender às suas necessidades.

Conclusão

SOAP cURLs são duas tecnologias que podem trabalhar juntas, onde comandos cURL podem ser usados para comunicação de serviços web baseados em SOAP. No entanto, note que seu uso está diminuindo devido a estilos arquitetônicos mais populares como REST.

Apidog é uma plataforma de desenvolvimento de API tudo-em-um que promove um desenvolvimento focado em design para APIs. Com o Apidog, você pode facilmente modificar e projetar APIs visualmente, graças à sua interface simples e intuitiva. Além disso, é uma escolha sólida para qualquer desenvolvedor que esteja interessado em experimentar uma nova plataforma, pois o Apidog suporta a importação de vários tipos de arquivos, incluindo Postman, WSDL e muitos outros.

Junte-se à Newsletter da Apidog

Inscreva-se para ficar atualizado e receber os últimos pontos de vista a qualquer momento.