Continuando o estudo dos web services: Protocolo SOAP para concursos

Por
2 min. de leitura

Pessoal, um dos protocolos utilizados em web services e que encontramos algumas questões de concurso é o SOAP (Simple Object Access Protocol), que é um padrão de trocas de mensagens que oferece suporte à comunicação entre os atores de uma arquitetura SOA.

Após conhecer a assinatura de um serviço, o próximo passo do solicitante do serviço é invocá-lo. Em web services, isso é realizado por meio de mensagens SOAP.

SOAP é uma especificação para a troca de informações estruturadas em um ambiente descentralizado e distribuído. Como tal, representa a forma principal de comunicação entre os três atores-chave em uma SOA. O objetivo principal desse design é ser simples e extensível.

SOAP permite que os desenvolvedores invoquem processos em execução em sistemas operacionais diferentes (como Windows, macOS e Linux) para autenticar, autorizar e se comunicar, usando XML. Como protocolos da Web estão instalados e em execução em todos os sistemas operacionais, SOAP permite que os clientes invoquem web services e recebam respostas independentemente da linguagem e da plataforma.

Assim, podemos concluir que o protocolo SOAP tem três características principais:

  • Extensibilidade (segurança e WS-Addressing estão entre as extensões em desenvolvimento).
  • Neutralidade (SOAP pode operar com qualquer protocolo, como HTTP, SMTP, TCP, UDP).
  • Independência (SOAP pode ser utilizado por qualquer linguagem de programação).

As principais vantagens do uso de SOAP podem ser resumidas no seguinte: as mensagens são firewal-friendly, XML é amplamente conhecido, é um protocolo utilizado por grandes organizações e existe uma variedade de bibliotecas para sua utilização.

O passo a passo de uma comunicação com SOAP pode ser resumida a seguir:

  • O cliente cria um envelope SOAP especificando o nome da operação requisitada e os nomes e valores dos parâmetros da operação.
  • A requisição é enviada pela rede ao provedor do serviço.
  • A requisição é recebida e interpretada.
  • A operação requisitada é executada.
  • A resposta, se houver, é colocada em um envelope SOAP e enviada ao cliente.

Para terminar, vamos falar um pouco da estrutura de uma mensagem SOAP. Toda mensagem SOAP é unidirecional e sem estado. Trata-se de um documento XML comum, que contém os seguintes elementos:

  • Envelope: Identifica o documento XML como uma mensagem SOAP.
  • Header: Contém informações do cabeçalho.
  • Body: Contém informações de chamada e resposta.
  • Fault: Fornece informações sobre os erros que ocorreram durante o processamento da mensagem.

Esquematicamente, temos:

O Envelope define o começo da mensagem SOAP, o Header possui informações específicas da aplicação (dados de autenticação, número de transação, etc.) e o Body contém a mensagem propriamente dita, ou seja, os dados que devem ser transmitidos, organizados de forma estruturada (graças ao XML).

Para terminar, vamos ver uma questão de concurso:

Questão 01 (adaptada) (CESPE/ANÁLISTA DE SISTEMAS/TRE-MS/2013)

No que se refere a SOA e webservices, avalie:

SOAP é um protocolo do tipo statefull, independente de sistema operacional, embasado em troca de mensagem one-way e projetado para ser simples e extensível por meio de tecnologia XML.

SOAP é stateless, ou seja, não armazena o estado do serviço. Por isso, a questão está ERRADA.


Quer ficar por dentro dos concursos públicos abertos e previstos pelo Brasil?
Clique nos links abaixo:

CONCURSOS ABERTOS

CONCURSOS 2022

Receba gratuitamente no seu celular as principais notícias do mundo dos concursos!
Clique no link abaixo e inscreva-se gratuitamente:

TELEGRAM

Por
2 min. de leitura